为什么在IE8中,是在父母的孩子身后流动的pesudo元素的背景颜色?文本在前面流动,但背景颜色不在前面. Z-index似乎没有任何帮助.
我无法确定这是否是IE8中的错误.这似乎是一个非常常见的用例,但我找不到很多博客文章或与之相关的SO问题.
<div id="parent"> <img src="http://placehold.it/200x200"> </div> #parent{ padding: 20px; } #parent:before{ content: 'Behind the image'; position: absolute; top: 0; left: 0; width: 100px; height: 100px; background-color: red; }
解决方法
这绝对是IE8中的一个错误;因为你的:在定位伪元素之前,它应该创建一个新的堆叠上下文并且总是在img
unless you give it a negative
z-index
之上绘制(即便如此,整个元素应该在它后面绘制,而不仅仅是它的背景).
这个问题似乎也特别适用于堆叠:之前和之后的伪元素和替换元素,如img.看起来IE8在堆叠方面对待替换内容的方式不同,但无论它做什么,它都绝对不符合规范.
您可能已经知道,这在IE9中已得到修复.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。