我需要在ul li
的背景上留下一些悬停效果。
图片:
HTML
<div id="topnav">
<ul class="nav clearfix">
<li id="menu-item-25" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-2 current_page_item menu-item-25">
<a href="http://localhost/">Home</a>
</li>
<li id="menu-item-45" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-45">
<a href="http://localhost/">Menu2</a>
</li>
<li id="menu-item-98" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-98">
<a href="http://localhost/">Menu3</a>
</li>
<li id="menu-item-96" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-96">
<a href="http://localhost/">Menu4</a>
</li>
<li id="menu-item-97" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-97">
<a href="http://localhost/">Menu5</a>
</li>
</ul>
<div>
CSS
#topnav {
font-size: 8pt;
font-weight: bold;
margin-top: 2%;
border: 1px solid #DDDDDD;
float: left;
font-size: 8pt;
margin-bottom: 0;
margin-left: 0;
margin-right: 0;
margin-top: 7% !important;
opacity: 0.8;
padding: 0;
width: 60%;
}
#topnav ul {
line-height: 1;
list-style: none outside none;
margin: 0;
padding: 0;
display: block;
}
#topnav ul li {
float: left;
width: auto;
margin:10px;
}
#topnav ul {
line-height: 1;
list-style: none outside none;
}
答案 0 :(得分:1)
据我所知,css3你无法选择元素的父元素(我可能错了)。使用JQuery非常简单$("#topnav a:hover").parent()
,这将选择包含a:hover。
希望我理解这个问题,这对你有帮助。
JQuery将li着色为白色的示例,您必须调整li的大小,以便可以看到此效果:
$(function(){
$("#topnav a").mouseenter(function(){
$("#topnav a:hover").parent().css("background-color","#FFFFFF");
}).mouseleave(function(){
$("#topnav a:hover").parent().css("background-color","#CBBBA1");
});
});
答案 1 :(得分:1)
像这样:jsfiddle.net/kaGvs/5? :)
你可以给“a”标签一个减去边距和边框,这应该相互抵消。
#topnav ul li a {
border-top: 15px solid transparent;
border-bottom : 15px solid transparent;
margin: -25px 0;
display:block;
line-height: 30px;
}
#topnav ul a:hover, #topnav ul ul a:hover {
color: #0A0A0A;
background-color: #CBBBA1;
border-color: white;
}
答案 2 :(得分:0)
试试这个
#topnav ul li:hover{
background:white;
}
#topnav ul li:hover a{
background:#d8b038;
}
<强> DEMO 强>
注意: 根据您的用户界面更改排名。我刚刚给出了悬停效果。