【发布时间】:2011-08-27 09:35:01
【问题描述】:
我面临着我在 css 中发现的最疯狂的问题之一......
我有两个 CSS-jQuery 水平下拉菜单,一个在上面,一个在下面,点击它时会显示下拉列表。
当我在 IE6 和 IE7 中单击上方的下拉菜单时,问题就出现了,并且绝对定位的元素超过了相对定位的元素。上方的下拉列表(绝对)显示在下方的下拉列表(相对)下方。
JavaScript:
$("button").click(function(e){
$(".menu").hide();
$(this).siblings(".menu").show();
e.stopPropagation()
});
$(document).click(function(){$(".menu").hide()});
HTML:
<div class="top">
<div class="dropdown">
<button>Dropdown1 v</button>
<div class="menu">
<a href="#link">Option a</a>
<a href="#link">Option b</a>
<a href="#link">Option c</a>
</div>
</div>
<div class="dropdown">
<button>Dropdown2 v</button>
<div class="menu">
<a href="#link">Option d</a>
<a href="#link">Option e</a>
<a href="#link">Option f</a>
</div>
</div>
</div>
CSS:
.dropdown{float:left;display:inline;clear:left;position:relative}
.menu{position:absolute;left:0;top:22px;z-index:1}
.menu a{display:block}
.menu{display:none;border:1px solid #ccc;padding:3px;background:#ffffe0}
示例如下:
解决方案:
【问题讨论】:
标签: css internet-explorer-7 css-position internet-explorer-6 z-index