我在处理IE7的z-index时遇到麻烦。我已经做了大量研究,但仍然无法解决我的问题。
我有
4 buttons with drop down menu. The dropdown menu has absolute position and have z-index of 9999;
---- ---- ----- -----
| | | | | | | |
---- ---- ----- -----
dmenu dmenu dmenu dmenu
another 4 buttons with popup images that pop on top of the button. The images also have absolute position and have z-index of 9999;
pop img pop img pop img pop img
---- ---- ----- -----
| | | | | | | |
---- ---- ----- -----
I want dropdown menu will cover the buttons below and and pop images will cover the button above.
一切都可以在Chrome和FF中正常运行,但IE可以。下拉菜单将显示在底部按钮的后面,而不是覆盖它们。
顶部按钮是下拉菜单的父级,底部按钮是弹出图像的父级。
我试过了
1.在顶部和底部按钮上设置相对位置。
2.运行此脚本
var zIndexNumber = 1000;
// Put your target element(s) in the selector below!
$("div").each(function() {
$(this).css('zIndex', zIndexNumber);
zIndexNumber -= 10;
console.log($(this));
});
上面的脚本将修复下拉菜单,使其覆盖底部按钮,但也使顶部按钮覆盖弹出图像,因为弹出图像的Z索引较低。
我现在非常沮丧,需要帮助。非常感谢!
最佳答案
尝试这个:
确保下拉列表的父母有一个位置:相对。
IE 6 & IE 7 Z-Index Problem
我通常会确保ul在这种情况下也具有display:block。
我要做的另一件事是将父级的z-index设置为较小的数字,并通过将body的z-index设置为0来设置页面上的z-index。