html中css使用div绘制三角形
2017-03-23 17:16
447 查看
在很多网页中经常会有三角形角标作为导航指示器使用,比如sketch官网就有如下图
注意licensing前面的三角形角标,那么他是如何实现的呢,让我们一起来探索下吧!
对于一个常规的div框而言,给其设置正常宽高,并设置border
为了方便展示,这里的border设置了不同属性
来看看会得到什么样式吧
如图所示,会有一个正常显示的方框,其外上下左右各有border,而对于每一个角所多出的则由相邻两个border平分
那么,如果我们把div设置成高度为0会怎么样呢?
方形只剩一条横线
同理,如果设置width为0,height仍为32px,那么会发现这个div框神奇得被拉高啦,变瘦啦
细思一下,如果没有宽高会怎么样,哇 世界上会存在一个没有尺寸的物体吗?
竟然全变成三角形了,好吧,这是意料之中的事。
咦,这么说的话,我好像想到了怎么去绘制一个三角形角标了
设置上方和下方的border为透明,左边的仍然留着就会发现,三角形已经出来啦,当然,不止这一种,其他的留待慢慢尝试
再来过一遍流程
哎,这个三角形好像和我们想象中的不一样,喔 对了好像我们要的是等边三角形对吧
喔喔是喔,让我想想勾股定理
55.36怎么来的?
就是32*1.732
1.732怎么来的?
查查根号表
当当当当….
等边三角形来啦!
是不是换个颜色 缩小点就能用啦!
注意licensing前面的三角形角标,那么他是如何实现的呢,让我们一起来探索下吧!
对于一个常规的div框而言,给其设置正常宽高,并设置border
.div__custom { position:relative; width: 32px; height: 32px; border-top:32px solid red; border-bottom: 32px solid black; border-left:32px solid yellow; border-right:32px solid blue; }
为了方便展示,这里的border设置了不同属性
来看看会得到什么样式吧
如图所示,会有一个正常显示的方框,其外上下左右各有border,而对于每一个角所多出的则由相邻两个border平分
那么,如果我们把div设置成高度为0会怎么样呢?
.div__no__height { position:relative; width: 32px; height: 0px; border-top:32px solid red; border-bottom: 32px solid black; border-left:32px solid yellow; border-right:32px solid blue; }
方形只剩一条横线
同理,如果设置width为0,height仍为32px,那么会发现这个div框神奇得被拉高啦,变瘦啦
细思一下,如果没有宽高会怎么样,哇 世界上会存在一个没有尺寸的物体吗?
.div__neither { position:relative; width: 0px; height: 0px; border-top:32px solid red; border-bottom: 32px solid black; border-left:32px solid yellow; border-right:32px solid blue; }
竟然全变成三角形了,好吧,这是意料之中的事。
咦,这么说的话,我好像想到了怎么去绘制一个三角形角标了
.div__triangle { position:relative; width: 0px; height: 0px; border-top: 32px solid transparent; border-bottom: 32px solid transparent; //设置上边框和下边框为透明 border-left:32px solid yellow; }
设置上方和下方的border为透明,左边的仍然留着就会发现,三角形已经出来啦,当然,不止这一种,其他的留待慢慢尝试
再来过一遍流程
哎,这个三角形好像和我们想象中的不一样,喔 对了好像我们要的是等边三角形对吧
喔喔是喔,让我想想勾股定理
.div__triangle__beautiful { position:relative; width: 0px; height: 0px; border-top: 32px solid transparent; border-bottom: 32px solid transparent; border-left:55.36px solid yellow; }
55.36怎么来的?
就是32*1.732
1.732怎么来的?
查查根号表
当当当当….
等边三角形来啦!
是不是换个颜色 缩小点就能用啦!
相关文章推荐
- div+css布局中选择使用html标签的方法
- html(Css+DIV)使用集锦
- 前端HTML、CSS、JS绘制三角形的方法
- 使用CSS绘制三角形
- javaEE02 使用HTML的表单标签编写“注册页面”,使用DIV和CSS重写网站首页
- HTML,使用div+css实现自适应table布局
- 如何使用HTML&CSS写一个三角形。
- 使用纯CSS完成一个三角形的绘制
- 使用CSS绘制三角形
- CSS使用div:before导致HTML中当前标签及其子标签都自动加上了:before样式
- HTML+CSS编写静态网站-16 使用div
- HTML&CSS——使用DIV和CSS完成网站首页重构
- 使用CSS绘制三角形
- 如何使用HTML+CSS画三角形
- HTML使用DIV+css实现展开全文的功能
- html中的div+css标签与属性的使用
- html中div使用CSS实现水平/垂直居中的多种方式
- Html+CSS绘制三角形图标
- 使用Css和Div ”画“个三角形
- CSS、HTMl使用position: fixed;实现div的高度填满剩余空间