pure css draw a triangle

code { display: inline-block; width: 300px; background-color: #E0E0E0 }
.text_intent { text-indent: 38px }
.d1 { width: 200px; height: 200px; border-top: 10px solid yellow; border-left: 10px solid purple; border-bottom: 10px solid blue; border-right: 10px solid pink }
.d2 { width: 0; height: 200px; border-top: 10px solid yellow; border-left: 10px solid purple; border-bottom: 10px solid blue; border-right: 10px solid pink }
.d3 { width: 0; height: 0; border-top: 10px solid yellow; border-left: 10px solid purple; border-bottom: 10px solid blue; border-right: 10px solid pink }
.d4 { width: 0; height: 0; border-top: 10px solid transparent; border-left: 10px solid transparent; border-bottom: 10px solid transparent; border-right: 10px solid pink }
.d5 { width: 0; height: 0; border-top: 10px solid yellow; border-left: 10px solid transparent; border-bottom: 10px solid transparent; border-right: 10px solid transparent }
.d6 { width: 0; height: 0; border-top: 10px solid transparent; border-left: 10px solid purple; border-bottom: 10px solid transparent; border-right: 10px solid transparent }
.d7 { width: 0; height: 0; border-top: 10px solid transparent; border-left: 10px solid transparent; border-bottom: 10px solid blue; border-right: 10px solid transparent }

我们有这样一个边框

.d1 {

width: 200px;

height: 200px;

border-top: 10px solid yellow;

border-left: 10px solid purple;

border-bottom: 10px solid blue;

border-right: 10px solid pink;

}

 

关键在于width的宽度高度必须设置为0四个角度的边框就会相互挤压

.d2 {

width: 0;

height: 200px;

border-top: 10px solid yellow;

border-left: 10px solid purple;

border-bottom: 10px solid blue;

border-right: 10px solid pink;

}

 

第三步:吧height改成0或者不设置也可以,会看到三角形啦,然后怎么只显示一个三角形呢?

.d3 {

width: 0;

/*height: 200px;*/

border-top: 10px solid yellow;

border-left: 10px solid purple;

border-bottom: 10px solid blue;

border-right: 10px solid pink;

}

 

第四步:还记得border的transparent透明属性么

.d4 {

width: 0;

/*height: 200px;*/

border-top: 10px solid transparent;

border-left: 10px solid transparent;

border-bottom: 10px solid transparent;

border-right: 10px solid pink;

}

 

.d5 {

width: 0;

/*height: 200px;*/

border-top: 10px solid yellow;

border-left: 10px solid transparent;

border-bottom: 10px solid transparent;

border-right: 10px solid transparent;

}

 

.d6 {

width: 0;

/*height: 200px;*/

border-top: 10px solid transparent;

border-left: 10px solid purple;

border-bottom: 10px solid transparent;

border-right: 10px solid transparent;

}

 

.d7 {

width: 0;

/*height: 200px;*/

border-top: 10px solid transparent;

border-left: 10px solid transparent;

border-bottom: 10px solid blue;

border-right: 10px solid transparent;

}

 

关于画其他三角形,总结一句话:左边中,上中,右右,下下,意思就是,左边的三角形变大会往中间挤压,上面的额也是,右边的变大往右边挤压,下面的变大往下挤压

理解纯CSS画三角形的更多相关文章

  1. 纯css画三角形

    纯css画三角形与border元素相关 设置border的属性 width: 100px; height: 100px; border-style: solid; border-width: 100p ...

  2. 纯css画三角形,勾等形状

    //三角形 .money-ul li.active:after { content: ""; position: absolute; bottom: 0; right: 0; bo ...

  3. 纯CSS画三角形(带边框)

    实例一: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...

  4. 用纯css画个三角形

    用纯css画个三角形以下是源代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  5. CSS 魔法系列:纯 CSS 绘制三角形(各种角度)

    我们的网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象不到的效果.特别是随着 CSS3 的广泛使用,更多新奇的 CSS 作品涌现出来. ...

  6. 三种纯CSS实现三角形的方法

    看到像上图这样的 tip 的小三角,你会怎么办? 切个图上去?恩,不错,简单,兼容性也一级棒,不但好控制,那点小东西也增加不了多少图片的大小.但有没有更好更讲究技巧的办法呢?哈哈,那必须有啊,而且还不 ...

  7. 纯 CSS 实现三角形尖角箭头的实例

    上次无意中发现了个使用纯 CSS 实现三角形尖角箭头的方法 http://blog.csdn.net/zhouzme/article/details/18901943 ,但没有怎么用上,也没有详细完整 ...

  8. CSS学习笔记(8)--纯CSS绘制三角形(各种角度)

    纯CSS绘制三角形(各种角度) CSS三角形绘制方法,学会了这个,其它的也就简单.   我们的网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多 ...

  9. css画三角形原理解析

    <div id="div1"></div><div id="div2"></div><div id=&qu ...

随机推荐

  1. 2017最新PHP面试题

    这几天在面试,下面分享一下这几天面试所遇到的笔试题,目前还不打算工作,面试题会持续更新的,有些不想写答案了,有心的可以自己看着面试题查一下感觉记忆更深点.下面分享一下这几天遇到的php面试题. 掌贝面 ...

  2. Linux中MySQL5.6编译安装与MySQL5.7二进制安装步骤

    首先,介绍一下MySQL的几种安装方式 1.RPM.Yum 的安装方式:安装方便.安装速度快,无法定制 2.二进制:不需要安装,解压即可使用,不能定制功能 3.编译安装:可定制,安装慢. 编译安装中需 ...

  3. [睡前灵感and发散思维]由一个简单的数组比较问题而想到的

    前言 据说,一只优秀的程序猿往往会有这样的经历,白天遇到一个绞尽脑汁也无法解决的问题,晚上睡了后,半夜在梦中会灵感涌现,立马起床,打开电脑,一气呵成.第二天如果不看注释,完全不知道自己找到了如此巧妙地 ...

  4. Android Studio怎样选择查看指定进程的log?

    今天说一个简单的东东,关于Android Studio在logcat中怎样查看指定进程的log. 关于过滤你自己所开发的应用的log.在这篇文章中:Android Studio怎样给log加入过滤项( ...

  5. 揭秘传智播客班级毕业薪资超7k的内幕系列 之三 ----国企慕名而来,将未毕业学员“抢走”,传智播客又一次定义“被就业”

    前面文章提及Java六期学员张同学提前就业某国企,入职薪资6.3k,各种福利齐全.作为班级首位就业同学,他的就业也成为了班级其它同学就业的风向标.但事实上张同学的就业属于"被就业" ...

  6. svn 批量加入没有加入版本号控制的文件命令

    svn st | awk '{if($1=="?"){print$2}}'|xargs svn add

  7. 谈谈PBOC3.0中使用的国密SM2算法

    转载请注明出处 http://blog.csdn.net/pony_maggie/article/details/39780825 作者:小马 一 知识准备 SM2是国密局推出的一种他们自己说具有自主 ...

  8. ssm学习(五)--加入分页插件

    之前我们的查询列表是将所有的数据查询出来,并没有做分页,当数据很少的时候,是不需要分页,但是如果数据很多的时候,所有数据显示在一个页面显然是不合适的. 之前用hibernate的时候,可以直接通过查询 ...

  9. 自学Zabbix2.1-安装需求

    zabbix的安装需求通常就是硬件配置.软件需求,或者说我安装zabbix需要什么软件,服务器需要什么样的配置,监控100台服务器需要怎样的一台服务器,或者我有一台8核16G的服务器,我能监控多少台服 ...

  10. python __getattr__ 巧妙应用

    在之前的文章有提到__getattr__函数的作用: 如果属性查找(attribute lookup)在实例以及对应的类中(通过__dict__)失败, 那么会调用到类的__getattr__函数, ...