为什么webkit过滤器上的堆叠顺序更改悬停?

Kin*_*uie 6 css webkit z-index filter

在应用webkit过滤器时,我注意到堆叠顺序存在一个奇怪的问题.为什么当我将鼠标悬停在图像上时堆叠顺序会发生变化?

我宁愿不必使用z-indexing来解决这个问题,因为它会破坏其他网站元素.

这是我的JSFiddle http://jsfiddle.net/r13ycy1p/

请原谅荷马,我只需要一张图片.

编辑:如何反转效果以阻止绝对位置div被隐藏?

这是我的HTML

<ul>
<li>
    <a href="#">
        <div class="slide-content">
            <div class="slide-title">
                <h1>hello world</h1>
            </div>
            <div class="slide-desc">
                <p>a description about something</p>
            </div>
        </div>
        <img src="http://img4.wikia.nocookie.net/__cb20130920142351/simpsons/images/e/e9/Pic_1187696292_8.jpg"/>

    </a>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

CSS

li {
list-style:none;    
}

.slide-content {
position:absolute;
color:red;
top:50px;
}

li a:hover img{
-webkit-filter: grayscale(100%); /* For Webkit browsers */
}
Run Code Online (Sandbox Code Playgroud)

Has*_*ami 7

这是因为除了none建立堆叠上下文之外的值.这在规范中记录(目前处于工作草案状态):

2模块交互

此规范定义了一组CSS属性,这些属性会影响应用这些属性的元素的可视化呈现; 根据[CSS21]中的可视化格式模型调整元素大小和位置后应用这些效果.这些属性的某些值导致创建包含块和/或创建堆叠上下文.

该规范还指出:

5图形过滤器:过滤器属性

除了none 导致创建堆叠上下文 [CSS21] 之外的计算值与CSS不透明度相同.

  • @MikeJackson`img` 的[颠倒顺序](http://jsfiddle.net/hashem/r13ycy1p/2/) 和 HTML 中绝对定位的元素怎么样? (4认同)