css三角形绘制
三角形演变:
1、将一个块元素的宽、高都设置为0,再设置边框样式,得如下效果图(绿色部分):

样式:
{width:;height:;border: 35px solid #7de87d;}
通过此样式得到的是一个正方形。
2、将正方形的左右边框设置成其他颜色,如:
{
width:;
height:;
border-left: 35px solid #ff9900;
border-right: 35px solid #ff9900;
border-top: 35px solid #7de87d;
border-bottom: 35px solid #7de87d;
}
效果图:

给块元素添加设置了其他颜色后,块元素被左右的三角形切割了。
3、如果再将左右两边设置成透明,又会是什么效果呢?

样式:
{
width:;
height:;
border-left: 35px solid transparent;
border-right: 35px solid transparent;
border-top: 35px solid #7de87d;
border-bottom: 35px solid #7de87d;
}
最终看到的是一个像漏斗形状的图形,如果将边框顶部去掉,那我们就可以直接得到向上的三角形了,如图:

样式:
{
width:;
height:;
border-left: 50px solid transparent;
border-right: 50px solid transparent;
border-bottom: 50px solid #7de87d;
}
其他方向的三角形:

向下三角形样式:
{
width:;
height:;
border-top: 50px solid #7de87d;
border-left: 50px solid transparent;
border-right: 50px solid transparent;
}

向左样式:
{
width:;
height:;
border-right: 40px solid #7de87d;
border-top: 40px solid transparent;
border-bottom: 40px solid transparent;
}

向右样式:
{
width:;
height:;
border-left: 40px solid #7de87d;
border-bottom: 40px solid transparent;
border-top: 40px solid transparent;
}

左下三角形样式:
{
width:;
height:;
border-bottom: 50px solid #7de87d;
border-right: 50px solid transparent;
}

右下三角形样式:
{
width:;
height:;
border-bottom: 50px solid #7de87d;
border-left: 50px solid transparent;
}

左上三角形样式:
{
width:;
height:;
border-top: 50px solid #7de87d;
border-right: 50px solid transparent;
}

右上三角形样式:
{
width:;
height:;
border-top: 50px solid #7de87d;
border-left: 50px solid transparent;
}
线性三角形:
除了上面给到的有背景颜色的三角形外,如果需要线性形状的三角形该怎么做呢?
这里就需要用到css3的变换(transform)属性了,如下样式:
{
width: 50px;
height: 50px;
border-top: 2px solid #7de87d;
border-right: 2px solid #7de87d;
transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
}
给块元素设置对角边框样式,再用transform属性旋转到对应角度就可以了,效果图:

其他线性三角形:

向下样式:
{
width: 50px;
height: 50px;
border-top: 2px solid #7de87d;
border-right: 2px solid #7de87d;
transform: rotate(135deg);
-webkit-transform: rotate(135deg);
}

向左样式:
{
width: 50px;
height: 50px;
border-top: 2px solid #7de87d;
border-right: 2px solid #7de87d;
transform: rotate(-135deg);
-webkit-transform: rotate(-135deg);
}

向右样式:
{
width: 50px;
height: 50px;
border-top: 2px solid #7de87d;
border-right: 2px solid #7de87d;
transform: rotate(45deg);
-webkit-transform: rotate(45deg);
}
总结:
再满足兼容性的情况下,通过样式制作三角形,比用图形制作三角形会来的简单、方便一些。比如在网页制作中,要实现下拉框上的向下图标,我们就可以直接用样式制作。又如做"更多"按钮后的向右图标,我们就可以用线性的三角形的做法。
css三角形绘制的更多相关文章
- CSS 三角形绘制方法
#triangle-up { width: 0; height: 0; border-left: 50px solid transparent; border-right: 5 ...
- CSS 利用border三角形绘制方法
CSS 三角形绘制方法,这里面的transparent比较重要,有和没有影响很大: 原理:这个div是由4个三角形组成,每个三角对应一个border,隐藏其它3个border,就可以得到一个三角形. ...
- 【基础】在css中绘制三角形及相关应用
简言 本文简要阐述了用CSS边框的方法在页面上绘制三角形,包括几种典型的三角形绘制,还介绍了几个简单的应用场景.利用边框绘制三角形方法只是众多方案中的一种,大家根据项目实际,选用最适宜项目的方案. 1 ...
- 【CImg】三角形绘制算法实现
这周的CV基础练习是简单的图形绘制:比如说矩形.三角形和圆心什么的.会发现其实矩形和圆形的实现思路都很直白,矩形只需要确认两个对角坐标就可以了,圆心只需要确认圆心和半径,接着就是简单的遍历各个像素点判 ...
- 前端读者 | CSS三角形和饼图
@羯瑞 三角形 .triangle{width:0;height:0;border-width:50px;border-style:solid;border-color:red blue green ...
- OpenglEs之三角形绘制
在前面我们已经在NDK层搭建好了EGL环境,也介绍了一些着色器相关的理论知识,那么这次我们就使用已经搭配的EGL绘制一个三角形吧. 在Opengl ES的世界中,无论多复杂的形状都是由点.线或三角形组 ...
- CSS - Tooltip-arrow 绘制三角形
问题:纯CSS实现bubble的三角形部分 方法:使用border来绘制三角形:例如 .trangle { ; border-color: transparent; border-style: sol ...
- 纯 CSS 实现绘制各种三角形(各种角度)
一.前言 三角形实现原理:宽度width为0:height为0:(1)有一条横竖边(上下左右)的设置为border-方向:长度 solid red,这个画的就是底部的直线.其他边使用border-方向 ...
- css三角形的实现
实底三角形: <html> <head> <title></title> <style type="text/css"> ...
随机推荐
- gem install 出现Errno::ECONNRESET: Connection reset by peer - SSL_connect (https://ruby.taobao.org
这几天在ubuntu14.04.1 64位上安装rails的时候,由于大天朝的原因,更换了淘宝源,然后执行 gem install rails 这个时候,总是会提示 Errno::ECONNRESET ...
- 转:靠谱的代码和DRY
http://www.cppblog.com/vczh/archive/2014/07/15/207658.html 靠谱的代码和DRY 上次有人来要求我写一篇文章谈谈什么代码才是好代码,是谁我已经忘 ...
- spoj 4487. Can you answer these queries VI (gss6) splay 常数优化
4487. Can you answer these queries VI Problem code: GSS6 Given a sequence A of N (N <= 100000) in ...
- Codeforces Round #207 (Div. 2)
A:超级大水题: 代码: #include<cstdio> #define maxn 105 using namespace std; int n,a[maxn],x,y,ans; int ...
- Codeforces Round #205 (Div. 2) : A
题意: 要求找到最少次数的交换次数使得两组数都是偶数: 很明显答案要么是0,要么是1,或者不管怎么交换都不行(-1): 所以: #include<cstdio> #define maxn ...
- Energy Minimization
zoj2539:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2539 题意:公式第一项只要当xi=0时才会有作用,第二项只 ...
- ckeditor与ckfinder简单整合使用
Ckeditor与ckfinder简单整合使用 功能:主要用来发送图文的email,图片上传到本地服务器,但是email的图片地址要写上该服务器的远程地址(图片地址:例如:http://www.bai ...
- SQL Server 2008 数据库误删除数据的恢复
原文:SQL Server 2008 数据库误删除数据的恢复 原文:http://www.cnblogs.com/dudu/archive/2011/10/15/sql_server_recover_ ...
- 纯CSS打造可折叠树状菜单
1:Html代码 <li> <label for="subsubfolder1">下级</label> <input id="s ...
- Java_xml_Dom解析方式
本博文为子墨原创,转载请注明出处! http://blog.csdn.net/zimo2013/article/details/12094775 1.Node准备 Node接口是整个文档对象模型的主要 ...