z-index在IE8中无效。为什么?

时间:2013-02-27 18:40:50

标签: css internet-explorer-8 z-index pseudo-element

我正在尝试用纯css设置组合框的样式并找到一些教程并创建组合框。它在chrome和firefox上工作正常。

请看一下我创建的风格。

http://jsfiddle.net/SnU3d/1

label
{
    position:relative;
    z-index:9999;
}


label:after 
{
    content:'?';
    font:11px "Consolas", monospace;
    color:#009FDF;
    font-size:120%;
    pointer-events:none;
    background: #fff;
    border:1px solid #999;
    width:30px;
    height:24px;
    margin-bottom:2px;
    position:absolute;
    border-left:0px;
    right:-1px;
    z-index:99;
}

我找到了一些有关此问题的其他教程。IE7 / IE8 z-index problementer link description here

所以我把zindex的值设置为更高的父标签。但仍然没有在IE8中出现after伪元素。为什么?如何使后期内容可见。

1 个答案:

答案 0 :(得分:0)

:after伪元素创建您应用它的元素的子元素(Label),以及分配给父元素(label)的z-index值,无论什么该值是,在该元素内创建一个新的堆叠上下文,因此您最终在其堆叠上下文的级别9999中使用父元素(label),并在其中使用子元素(label:after)它自己的堆叠上下文的99级,父级(label)总是作为背景(底部)。