最近ui优化做的比较多,样式写久了,越来越觉得 伪元素
是真的好用,善用 伪元素
能极大的提高效率。
下面总结下几种常用的伪元素用法:
- 三角形
- 业务场景下的一些样式
- 垂直居中
用法
三角形
在 css
中,border边框
是由上下左右四个三角形组成的,所以,设置 border
边框为 transparent
,再设置要显示的 border
颜色, 即可以显示出三角形。
- 通过设置不同的
border
和border-left
宽度,可以生成不同效果的三角形 - 添加
border-radius
, 可以让 三角形变成扇形
Demo
相关代码
1 | <div class="pseudo"> |
1 | .pseudo { |
业务场景
最近的项目中,有个需求是自适应的情况下,显示5列图标,每列之间用箭头连接。
单独的图标自适应好做,flex
、 grid
布局都可以实现,但是图标间的 连接箭头
就不好做了,因为2个图标之间的距离,是不固定的….但是!如果用伪元素,这个问题就很容易解决了~
Tips:
- 1个
元素
只能有1个伪元素
,如果要使用多个伪元素
,就得用多个元素div
arrows-before.width
宽度多10px
,是为了能和arrows-after
重叠,视觉看起来虚线不断裂
Demo
相关代码
1 | <div class="home-menu"> |
1 | @arrows-border: #E6E6E6; |
垂直居中
参考之前写的一篇文章,利用 父元素
的 伪元素
,可以实现垂直居中
相关代码
1 | <div class="parent"> |
1 | .parent { |
总结
伪元素的用法还有很多,目前常用的暂时就这些,其他用法等用的多后再记录下来吧~