Z-Index在IE7中不起作用

时间:2009-06-04 06:35:34

标签: css internet-explorer

我在删除按钮点击时创建了对话框。它覆盖了父Div。

它在IE 7以外的所有浏览器中工作。我在对话框和div中提到了Css。

dialog_box {
width:219px;
height:100px;
background-image:url(../images/preference/popup.png); background-repeat:no-repeat;
padding:10px;
position:absolute;
right:-10px;
z-index:50;
overflow:hidden;
}

Div{
border:solid 1px #ffffff;
padding:10px;
padding-left:30px;
padding-top:10px;
padding-bottom:10px;
position:relative;
text-align:left;
}

知道为什么会这样吗?

6 个答案:

答案 0 :(得分:5)

如果没有看到HTML就很难了,而且我不确定iframe会如何影响这一点,但它似乎和this question一样,所以Davidyn可能是对的。

我在IEs z-indexing更新:新的和实时链接)上发布了一些帖子,其中有一些插图可能会让您更接近解决方案。

文章现在已经关闭,所以这里是wayback machine's archive

答案 1 :(得分:1)

你应该在位置上设置z-index:相对元素(如果有的话,不要在其中的绝对元素上)。

另请注意,在为定位元素设置z-index时,将为子元素创建新的z顺序堆栈。

答案 2 :(得分:0)

dialog_box引用的元素与Div在同一个容器中吗?在IE中,处理同一包含块中包含的元素的z-index有时可能是古怪的。尝试将dialog_box移动到更高级别的包含块(比如body元素),看看它是如何工作的。您可能需要调整您的定位,但通常将弹出式div放在身体级别可以缓解任何奇怪的z-index /绝对定位行为。

答案 3 :(得分:0)

这是IE7的常见问题。

请参阅: http://social.msdn.microsoft.com/Forums/en-US/iewebdevelopment/thread/64774ff1-1cce-4666-a2c7-9a899994aaef

或google“IE7 z-index”并了解更多内容。

答案 4 :(得分:0)

不确定你要去的地方......我想在dialog_box下的DIV?

可能是你没有为DIV定义一个z-index,看看是否有40个工作。

答案 5 :(得分:0)

这是帮助你的最佳方式。使用jquery

$(function() {
   var zIndexNumber = 1000;
   $(".x").each(function() {
           $(this).css('zIndex', zIndexNumber);
           zIndexNumber -= 10;
   });
});

  

.rel {width:50px;高度:50像素;背景色:#333;     位置:相对; } .abs {position:absolute;顶部:34像素;左:5px的;     背景色:#FFF;高度:20像素;宽度:30像素; }

HTML

<div class="rel"><div class="abs"></div></div>