三角形演变:

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三角形绘制的更多相关文章

  1. CSS 三角形绘制方法

    #triangle-up {    width: 0;    height: 0;    border-left: 50px solid transparent;    border-right: 5 ...

  2. CSS 利用border三角形绘制方法

    CSS 三角形绘制方法,这里面的transparent比较重要,有和没有影响很大: 原理:这个div是由4个三角形组成,每个三角对应一个border,隐藏其它3个border,就可以得到一个三角形. ...

  3. 【基础】在css中绘制三角形及相关应用

    简言 本文简要阐述了用CSS边框的方法在页面上绘制三角形,包括几种典型的三角形绘制,还介绍了几个简单的应用场景.利用边框绘制三角形方法只是众多方案中的一种,大家根据项目实际,选用最适宜项目的方案. 1 ...

  4. 【CImg】三角形绘制算法实现

    这周的CV基础练习是简单的图形绘制:比如说矩形.三角形和圆心什么的.会发现其实矩形和圆形的实现思路都很直白,矩形只需要确认两个对角坐标就可以了,圆心只需要确认圆心和半径,接着就是简单的遍历各个像素点判 ...

  5. 前端读者 | CSS三角形和饼图

    @羯瑞 三角形 .triangle{width:0;height:0;border-width:50px;border-style:solid;border-color:red blue green ...

  6. OpenglEs之三角形绘制

    在前面我们已经在NDK层搭建好了EGL环境,也介绍了一些着色器相关的理论知识,那么这次我们就使用已经搭配的EGL绘制一个三角形吧. 在Opengl ES的世界中,无论多复杂的形状都是由点.线或三角形组 ...

  7. CSS - Tooltip-arrow 绘制三角形

    问题:纯CSS实现bubble的三角形部分 方法:使用border来绘制三角形:例如 .trangle { ; border-color: transparent; border-style: sol ...

  8. 纯 CSS 实现绘制各种三角形(各种角度)

    一.前言 三角形实现原理:宽度width为0:height为0:(1)有一条横竖边(上下左右)的设置为border-方向:长度 solid red,这个画的就是底部的直线.其他边使用border-方向 ...

  9. css三角形的实现

    实底三角形: <html> <head> <title></title> <style type="text/css"> ...

随机推荐

  1. mysql的查询缓存模式介绍

    mysql的查询缓存 查询是数据库技术中最常用的操作.查询操作的过程比较简单,首先从客户端发出查询的SQL语句,数据库服务端在接收到由客户端发来的 SQL语句后, 执行这条SQL语句,然后将查询到的结 ...

  2. Python 统计代码行

    正在学习 Python, 做了个统计代码行的功能, 参考了网上很多前辈的帖子,添加了感觉还是比较实用的功能, 只是windows下测试了,而且代码文件编码形式是 utf-8的. 如果使用其它编码形式的 ...

  3. WPF扩展标记

    标记扩展和 WPF XAML,标记扩展是 XAML 语言以及 XAML 服务的 .NET 实现的常规功能 XAML 处理器和标记扩展 XAML 分析器可将特性值解释为可转换成基元的文本字符串,或可通过 ...

  4. [转载]为什么使用%lf读取double型的值,而用%f进行显示?

    博客地址:http://blog.csdn.net/shenzhou111/article/details/7826444 今天看到一篇好文章,mark一下. 出去旅游了一下,所以有些天没敲代码,于是 ...

  5. POJ 2049 Finding Nemo bfs 建图很难。。

    Finding Nemo Time Limit: 2000MS   Memory Limit: 30000K Total Submissions: 6952   Accepted: 1584 Desc ...

  6. apache301重定向设置

    <VirtualHost ip地址>   #DocumentRoot /文件夹/  ServerName XXXX.com  RewriteEngine on  RewriteRule ^ ...

  7. 【转】转移Package Cache文件夹,转移Windows Installer文件夹

    详见http://blogs.msdn.com/b/heaths/archive/2014/02/11/how-to-relocate-the-package-cache.aspx (注意:若Wind ...

  8. js共享onload事件

    问题:通过js进行事件绑定,必须在HTML文档加载完成后再执行js脚本,否则可能因DOM不完整导致无法完成预计的效果,但对于不同的需求如何选用最佳的实现方式呢,这里做了整理,可以做参考. 一.对于小型 ...

  9. Origin null is not allowed by Access-Control-Allow-Origin

    http://www.cnblogs.com/accessking/archive/2012/05/12/2497000.html http://bbs.csdn.net/topics/3903099 ...

  10. Eclipse的设置小细节提高开发效率

    1. 自动联想功能增强 preference->java->Editor->Content Assist中, Auto activation triggers for java中默认 ...