下拉项目中的文本重叠项目

时间:2012-03-12 15:51:19

标签: css

嘿所以我有这种情况,如果页面包含文本和文本包含带有一些项目的UL列表,那些LI项目将与下拉列表中的项目重叠,然后用户向下滑动下拉列表。

我认为通过在我的下拉列表中添加以下内容来修复此问题。

position:relative; z-index:999999;

给我

#source-programs-dd { overflow: auto; background: #fff; max-height: 198px; position:relative; z-index:999999;}
除了IE7以外,它在任何地方都有效吗?

1 个答案:

答案 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,我可以尝试帮助您找到确切的问题。

干杯!