1

我正在应用过滤器来实现 div 上的渐变。在元素内部,还有另一个元素应该与另一个元素重叠。为此,我使用z-index.

这适用于除 IE7 之外的所有(我测试的)浏览器 filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3595d0', endColorstr='#004193',GradientType=0 );

/*Close button inside the element with the filter*/
 .close-button {
    position: relative;
    float: right;
    display: inline-block;
    margin: -10px;
    width: 22px;
    height: 22px;
    cursor: pointer;
    z-index: 2000;
}

如果我从我的代码中删除过滤器,这将有效。在 IE7 中我可以不用过滤器,但在 IE7+ 中会很好。为什么会这样?有什么解决方法吗?

编辑:se fiddle http://jsfiddle.net/petel/HPPh2/5/。在我的情况下,x 是一个图像。我在这里无法在 IE7 中打开小提琴。不知道为什么。

4

1 回答 1

0

IE7 中的过滤器使用 activex 模拟 haslayout。它把元素带到了前面。

尝试对按钮也应用过滤器(我没有更多的 IE7,只是对其行为的好坏记忆)

http://liveweave.com/x3GVng (你应该可以在 IE7 中看到它(不要尝试编辑,使用以后的浏览器)

于 2013-07-02T15:21:50.757 回答