【发布时间】:2012-06-18 23:20:37
【问题描述】:
我遇到了一个问题,如果我设置了相对定位的父元素的 z-index,那么伪元素就不能定位在它后面。
示例:http://dabblet.com/gist/2948390
HTML:
<div class="img"><img src="http://lorempixel.com/500/344"></div>
CSS:
.img {
background:#fff;
z-index:10;
position:relative;
width:500px;
height:344px;
border:1px solid black;
padding:10px;
}
.img:after {
content:'';
z-index:0;
position:absolute;
bottom:-5px;
left:10px;
width:50%;
height:20%;
-webkit-box-shadow:0 15px 10px rgba(0, 0, 0, 0.7);
-moz-box-shadow:0 15px 10px rgba(0, 0, 0, 0.7);
box-shadow:0 15px 10px rgba(0, 0, 0, 0.7);
}
你可以在这里看到,如果我从父元素中删除 z-index 并将伪元素上的 z-index 更改为负数,那么它可以工作。
http://dabblet.com/gist/2948402
很遗憾,我无法使用该方法,因为页面其余部分的内容是如何定位的。我必须能够在父元素上设置 z-index。
知道为什么我的第一个示例会这样运行吗?
【问题讨论】: