嘿所以我有这种情况,如果页面包含文本和文本包含带有一些项目的UL
列表,那些LI
项目将与下拉列表中的项目重叠,然后用户向下滑动下拉列表。
我认为通过在我的下拉列表中添加以下内容来修复此问题。
position:relative; z-index:999999;
给我
#source-programs-dd { overflow: auto; background: #fff; max-height: 198px; position:relative; z-index:999999;}
除了IE7以外,它在任何地方都有效吗?
答案 0 :(得分:1)
为了帮助您直接解决问题,我需要查看您的HTML和CSS。但一般来说IE7有一个已知的z-index问题以及它如何计算子元素的z-index。
围绕此问题有几个Stackoverflow问题。以下是一些可能有所帮助:
IE7 Z-Index issue - Context Menu
expanding the menu appearing underneath the gallery in IE7
一般的想法是,在IE7中,z-index是在兄弟姐妹的父元素上计算的。这听起来有点奇怪所以这是一个例子:
<div id="parent1">...</div>
<div id="parent2">...</div>
如果.parent1有类似于UL菜单的重叠.parent2,那么.parent2可能会出现在该内容的前面,无论z-index是什么.parent1的任何子元素
这是因为IE7比较了.parent1和.parent2的z索引,并且在某种意义上将使所有子元素继承它们的值。 (子元素实际上得到了彼此相关的z-index上下文。但其他父元素的子元素首先受其父母的影响,与其他父母的子元素相关)
解决方案是找到导致问题的2个元素,并找到它们共享父元素的位置,这些元素是彼此的兄弟元素。
然后对这些元素应用适当的z-index。
.parent1{ z-index:10; }
.parent2{ z-index:1; }
如果您发布HTML,我可以尝试帮助您找到确切的问题。
干杯!