位置:相对出现在位置:绝对

时间:2010-08-21 19:29:06

标签: css

在IE7中遇到一个奇怪的问题。在很多地方,我有一个DIV,它有一个绝对位置(虚拟下拉),只要它背后有一个有位置的东西:相对定位的项目将通过另一个div显示。

相对定位的项目没有任何z-index集,而绝对定位的项目(我想要的那个)的z-index为1000.

http://skitch.com/louiswalch/dub5h/microsoft-windows-vista

1 个答案:

答案 0 :(得分:25)

我怀疑你已经尝试过,但是在相对定位的元素上设置一个z-index,该元素低于绝对定位元素的z-index作为第一个测试。

如果这不起作用,您需要确保两个元素都在同一个stacking context。在IE中,每当您将position CSS规则应用于元素时,它都会在该元素中生成新的堆叠上下文。这意味着z-index只能在该元素的子元素中得到适当的尊重,其他堆叠上下文中的子元素 较低的z-index可能仍然堆叠在上面。

在您的情况下,您需要将下拉菜单和按钮放在相同的堆叠上下文中将z-index应用于生成其单独堆叠上下文的2个元素。