代码:spa
<div id="test"></div>
/*状况1:#test不使用z-index*/
#test{width:120px;height: 60px;background:#bcbcbc;position: absolute; left: 200px;/*z-index:0;*/}
/*状况2:#test使用固定定位*/
#test{width:120px;height: 60px;background:#bcbcbc;position: fixed; left: 200px;/*z-index:0;*/}
/*状况3:#test使用z-index*/
#test{width:120px;height: 60px;background:#bcbcbc;position: absolute; left: 200px;z-index:0;}
#test::before{ content:''; display: block; width:60px;height: 60px;background: #333; position: absolute; left:-20px; top:5px; z-index: -1; } #test::after{ content:''; display: block; width:60px;height: 60px;background: #333; position: absolute; right:-20px; top:5px; z-index: -1; }
效果图:code
状况1效果blog
状况2和状况3的效果同样文档
那么,问题来了:it
1.为何伪元素的父元素使用z-index以后,伪元素的z-index失效.io
2.为何伪元素的父元素使用fixed以后,即便不使用z-index,伪元素的z-index失效.class
3.官方文档也没有介绍这一块空缺.test