本文介绍的是利用纯CSS的带箭头流程进度条,兼容到IE8,需要的朋友们下面来一起学习学习。
首先写出一个基本的样式。
1 2 3 4 5 6 7 8 |
.cssNav li{ padding : 0px 20px ; line-height : 40px ; background : #50abe4 ; display : inline- block ; color : #fff ; position : relative ; } |
接下来使用 :after 伪类画出一个三角形,定位到右边,如下:
1 2 3 4 5 6 7 8 9 10 |
.cssNav li:after{ content : '' ; display : block ; border-top : 20px solid red ; border-bottom : 20px solid red ; border-left : 20px solid blue ; position : absolute ; rightright: -20px ; top : 0 ; } |
然后将after的颜色修改下,基本的雏形已经看到了。
1 2 3 4 5 6 7 8 9 10 11 |
.cssNav li:after{ content : '' ; display : block ; border-top : 20px solid transparent ; border-bottom : 20px solid transparent ; border-left : 20px solid #50abe4 ; position : absolute ; rightright: -20px ; top : 0 ; z-index : 10 ; } |
继续使用 :before 伪类来画出左边的三角形。如下:
1 2 3 4 5 6 7 8 9 10 |
.cssNav li:before{ content : '' ; display : block ; border-top : 20px solid red ; border-bottom : 20px solid red ; border-left : 20px solid blue ; position : absolute ; left : 0px ; top : 0 ; } |
然后修改下before的颜色,并复制多个模块看看。
最后把开头和结尾的稍微修饰一下。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
.cssNav li:first-child{ border-radius: 4px 0 0 4px ; padding-left : 25px ; } .cssNav li:last-child,.cssNavEnd{ border-radius: 0px 4px 4px 0px ; padding-right : 25px ; } .cssNav li:first-child:before{ display : none ; } .cssNav li:last-child:after,.cssNavEnd:after{ display : none ; } |
加上选中状态,大功告成。
1 2 3 4 5 6 |
.cssNav li.active { background-color : #ef72b6 ; } .cssNav li.active:after { border-left-color : #ef72b6 ; } |
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。