很多时候我们用到三角形这个效果:

  我们可以用CSS3实现这个效果,怎去做呢?先阐述一下原理,我们定义一个空的div,设置这个div宽高为0,给这个div加上一个100px边框(这里是方便观察),得到的是一个正方形,颜色和定义边框的颜色相同,我们看到正方形其实是这个div边框。

<div id="d1"></div>

style:
#d1{
width:0;
height:0;
border:100px solid red;
}

实现效果:

那么这个元素现在对应的每个边框是什么样子的呢?我们来看:

对应代码:

<div id="d1"></div>

style:
#d1{
width:0;
height:0;
border-width:50px;
border-style:solid;
border-color:red blue black yellow;
             上  右   下   左
}

从上面这个我们发现,其实这个宽高为0的div的每一条边框都是一个三角形,实际操作中我们可能只需要一个三角形,那我们只要把不需要的border隐藏就可以了(用transparent属性):

比如我要一个向下的三角形:

对应代码:

<div id="d1"></div>

style:
#d1{
width:0;
height:0;
border-width:50px;
border-style:solid;
border-color:red transparent transparent transparent;
             上   右      下      左
}

由此可以看出只是把对应border隐藏掉了,对应的border—color顺序为:

border-color:上  右  下  左; 每个颜色之间用空格隔开。

一个45度三角形:

对应代码:

<div id="d1"></div>

style:
#d1{
width:0;
height:0;
border-width:50px;
border-style:solid;
border-color:transparent transparent red red ;
     border-color:transparent transparent red blue ;
}

同时我们可以调整对应border的宽度来调整三角形的形状:

  

对应代码:

  我们这里修改了下方border的宽度

<div id="d1"></div>
style:
#d1{
width:0;
height:0;
border-width:50px;
border-bottom-width:150px;
border-style:solid;
border-color:transparent transparent red transparent;
border-color:blue green red black;
}

同时我们也可以绘制一个圆角三角形:

对应代码:

这里为了看起来舒服些,加了透明度属性;

<div id="d1"></div>
style:
#d1{
width:0;
height:0;
border-width:50px;
border-style:solid;
border-top-left-radius: 15px;
opacity: 0.569;
border-color:red transparent transparent red;
}

关于三角形的制作基本就这些,很多时候配合伪类before、after使用会有意想不到的效果:

比如这个我自己编写的登录窗口的标签:

CSS3实现三角形的更多相关文章

  1. css3画三角形的原理

    以前用过css3画过下拉菜单里文字后面的“下拉三角符号”,类似于下面这张图片文字后面三角符号的效果 下面是一个很简单的向上的三角形代码 #triangle-up { width: 0; height: ...

  2. pure CSS3 实现三角形icon的方法

    pure CSS3 实现三角形icon的方法 border: color+transparent transform : rotate() /rotateZ() ? 使用 实体字符"◆&qu ...

  3. CSS3实现三角形和对话框

    这是最终实现的效果,类似于微信对话框的样式. 分析一下这个对话框的结构,由一个小三角形和一个长方形构成.长方形很容易就可以实现,重点是如何用CSS3做出一个小三角形. 一.如何生成一个三角形  总结: ...

  4. 怎么利用CSS3绘制三角形

    最近三角形挺火,很多地方都能碰到,如网页,微信,或者QQ空间的时间轴等地方都能看到,而且这些并不是图片插入进去的,那就需要用CSS来做了 <p class="bbb"> ...

  5. CSS3画三角形原理

    1.首先看一下画出一个下三角形完整的代码及效果图 #trangle1-up{ width:; height:; border-left:50px solid transparent; border-r ...

  6. CSS3中三角形及三角形组合图实现

        几何之三角形及三角形的组合图案理论 三角形( triangle ['traɪæŋɡl])可以看成正方形对角线交叉形成的图形 若想得到编号①方向向下三角形,只需对编号②③④三角形让其透明tran ...

  7. 使用CSS3制作三角形小图标

    话不多说,直接写代码,希望能够对大家有所帮助! 1.html代码如下: <a href="#" class="usetohover"> <di ...

  8. css3实现三角形,聊天背景气泡,心形等形状

    1.聊天背景气泡: css代码如下: #talkbubble {width: 120px;margin:auto; background: red; position: relative; -moz- ...

  9. css3绘制三角形

    将div的宽和高设置为0:利用border-width.border-style.border-color属性绘制不同位置边框的样式.将不需要展示的三角颜色填充为transparent透明即可,就能得 ...

随机推荐

  1. 基于mapreducer的图算法

    作者现就职阿里巴巴集团1688技术部 引言 周末看到一篇不错的文章"Graph Twiddling in a MapReduce world" ,介绍MapReduce下一些图算法 ...

  2. Android Studio使用教程(一)

    今年的Google全球开发者大会虽然没有新的Android系统和设备,但是还是推出了一些不错的产品,Android Studio就是其中之一.这个基于Intellij IDEA开发的Android I ...

  3. USB通讯协议 && 数据传输

    USB2.0通讯协议(spalish)   1.包(packet) 包是USB系统中信息传输的基本单元,所有数据都是经过打包后在总线上传输的.USB包由五部分组成,同步字段(sync).包标识符(PI ...

  4. 判断http 请求来自于手机还是PC

    首先收集了部分客户端请求头部信息如下 iPhone微信: User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 8_1_2 like Mac OS X) App ...

  5. .NET基础拾遗(7)多线程开发基础1

    一.多线程编程的基本概念 1.1 操作系统层面的进程和线程 (1)进程 进程代表了操作系统上运行着的一个应用程序.进程拥有自己的程序块,拥有独占的资源和数据且可以被操作系统调度. But,即使是同一个 ...

  6. JAVA--聊天界面面板

    package windows.beautify; import java.awt.BorderLayout; import java.awt.Color; import java.awt.event ...

  7. 在div+css中用到的js代码注意return

    今天做了一个项目,美工做好后放在了form中(没有加runat=server),由于用到了服务器控件,所以这里要加,否则报错,关键一段div代码是: <form id="form_re ...

  8. QT VS2008未处理的异常: 0xC0000005

    症状如图所示 出错代码段在第3行 QString dir = QFileDialog::getExistingDirectory(this,    tr("Save file path&qu ...

  9. js控制TR的显示影藏

    在很多现实的场景中,有的文本框我们希望在选择“是”的按钮之后才出现,这就需要js控制TR的隐藏和显示,(div的影藏显示类似) 以下是一段选择是的按钮就显示身高和体重的文本框的代码.注意:ready方 ...

  10. 几个个实用的PHP代码片段【自己备份】

    检查服务器是否是 HTTPS 这个PHP代码片段能够读取关于你服务器 SSL 启用(HTTPS)信息. if ($_SERVER['HTTPS'] != "on") { echo ...