【发布时间】:2011-05-24 18:25:15
【问题描述】:
我制作了一个简单的下拉菜单,效果很好,但我想在按钮和下拉菜单之间(在底部按钮/链接和顶部下拉菜单之间)添加一些空间。
问题是,如果我不在按钮和下拉菜单之间添加空格,它可以正常工作,但是一旦我在它们之间添加空格,一旦我离开按钮,下拉菜单就会返回隐藏。
我可以在悬停时使 li 更高,但 li 附加了样式,所以我对此无能为力(a 元素也附加了固定样式)。
那么,如果我将鼠标悬停在其父 li 之间,如果下拉菜单之间有空格,我该如何保持下拉菜单处于活动状态?
jQuery 代码
$('#sub-menu li').hover(function(){
$(this).children('ul').stop(true,true).fadeIn(100);
},function(){
$(this).children('ul').stop(true,true).fadeOut(100);
});
基本的html代码
<div>
<ul>
<li><a href="#">link</a>
<ul>
<li>dropdown menu</li>
<li>dropdown menu</li>
<li>dropdown menu</li>
</ul>
</li>
</ul>
</div>
【问题讨论】:
-
您能否包含您的 css 以及您正在做什么来添加空间(边距、填充、绝对位置等)?
-
您可以在悬停时向主列表 li 添加一个边框底部。使它变厚并且与标题背景颜色相同,因此它将充当下拉菜单和菜单按钮之间所需的填充。不过我还没有检查过。
-
按钮在哪里以及您分配给谁
id="sub-menu";ul或div
标签: jquery html hover drop-down-menu