use*_*093 -12 html css menu hover nav
当用户将鼠标悬停在水平菜单上时,如何保持子菜单打开,直到另一个菜单项悬停在上面?这是源代码:
HTML
<ul id="nav">
<li><a href="/">Home</a></li>
<li><a href="#">my Links</a>
<ul>
<li><a href="Link1">Link 1</a></li>
<li><a href="Link2">Link 2</a></li>
</ul>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
CSS
#nav {
width:100%;
margin:0;
padding:12px 0 4px 0;
height:30px;
position:relative;
}
#nav li {
float:left;
list-style:none;
display:inline
}
#nav a {
text-decoration:none;
}
#nav li ul li a {
margin:0
}
#nav .active a, #nav li:hover>a {
background:#ac2024;
color:#fff;
}
#nav li a:hover, #nav ul a:hover {
background:#ac2024;
color:#fff
}
#nav ul {
position:absolute;
left:0;
height:27px;
width:100%;
display:none;
}
#nav li:hover>ul {
display: inline;
}
#nav ul a {
width:100%
}
#nav:after {
content:".";
display:inline;
clear:both;
visibility:hidden;
height:0
}
#nav {
display:inline-block
}
Run Code Online (Sandbox Code Playgroud)
如果使用CSS无法做到这一点,那么如何使用jQuery呢?谢谢.
根据您更新的问题,修改后的答案如下.
您需要添加少量的JS,如我的评论中所述,请参阅此处进行演示
更新的HTML:
<ul id="nav">
<li><a href="/">Home</a></li>
<li><a id="hover1" href="#">my Links</a>
<ul id="visible1">
<li><a href="Link1">Link 1</a></li>
<li><a href="Link2">Link 2</a></li>
</ul>
</li>
<li><a id="hover2" href="#">Our Links</a>
<ul id="visible2">
<li><a href="Link1">Link 3</a></li>
<li><a href="Link2">Link 4</a></li>
</ul>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
更新的CSS:
#nav {
width:100%;
margin:0;
padding:12px 0 4px 0;
height:30px;
position:relative;
}
#nav li {
float:left;
list-style:none;
display:inline
}
#nav a {
text-decoration:none;
}
#nav li ul li a {
margin:0
}
#nav .active a, #nav li:hover>a {
background:#ac2024;
color:#fff;
}
#nav li a:hover, #nav ul a:hover {
background:#ac2024;
color:#fff
}
#nav ul {
position:absolute;
left:0;
height:27px;
width:100%;
display:none;
}
#nav li:hover>ul {
display: inline;
}
#nav ul a {
width:100%
}
#nav:after {
content:".";
display:inline;
clear:both;
visibility:hidden;
height:0
}
#nav {
display:inline-block
}
.result_hover {
display:block !important;
}
Run Code Online (Sandbox Code Playgroud)
更新了JQuery:
$("#hover1").hover(
function () {
$("#visible1").addClass("result_hover");
$("#visible2").removeClass("result_hover");
}
);
$("#hover2").hover(
function () {
$("#visible2").addClass("result_hover");
$("#visible1").removeClass("result_hover");
}
);
Run Code Online (Sandbox Code Playgroud)