<ul id="login">
<li><a href="#">User></a></li>
<li><a href="#">Logout></a></li>
</ul>
我確實讓我的菜單和子菜單正常工作。但最後一個項目來自一個局部視圖犯規表演,因爲這條線如何讓內部元素忽略樣式
/* hide the second level menu */
.menu ul {
display: none;
我嘗試使用:not
選擇推杆,但隨後顯示出一個錯誤的格式和第一子菜單停止工作。
.menu ul:not(#login)
在這個例子中,所有四個<LI>
元素應該有相同的格式,第一個顯示子菜單。
也嘗試爲第二個UL
創建不同的類並忽略我。
body {
background: black;
}
.menu {
display: block;
}
.menu li {
display: inline-block;
position: relative;
z-index: 100;
}
.menu li a {
font-weight: 600;
text-decoration: none;
padding: 11px;
display: block;
color: #ffffff;
-webkit-transition: all 0.2s ease-in-out 0s;
-moz-transition: all 0.2s ease-in-out 0s;
-o-transition: all 0.2s ease-in-out 0s;
-ms-transition: all 0.2s ease-in-out 0s;
transition: all 0.2s ease-in-out 0s;
}
.menu li a:hover, .menu li:hover > a {
color: #ffffff;
background: #9CA3DA;
}
/* hide the second level menu */
.menu ul {
display: none;
margin: 0;
padding: 0;
width: 150px;
position: absolute;
top: 43px;
left: 0px;
background: #ffffff;
}
/* display second level menu on hover */
.menu li:hover > ul {
display: block;
}
.menu ul li {
display: block;
float: none;
background: black;
margin: 0;
padding: 0;
}
.menu ul li a {
font-size: 12px;
font-weight: normal;
display: block;
color: #797979;
border-left: 3px solid #ffffff;
background: #ffffff;
}
.menu ul li a:hover, .menu ul li:hover > a {
background: #f0f0f0;
border-left: 3px solid #9CA3DA;
color: #797979;
}
<nav>
<ul class="menu">
<li>
<a href="#"><i class="icon-home"></i>HOME</a>
<ul class="sub-menu">
<li><a href="#">Sub-Menu 1</a></li>
<li><a href="#">Sub-Menu 2</a></li>
<li><a href="#">Sub-Menu 3</a></li>
</ul>
</li>
<li><a href="#"><i class="icon-user"></i>ABOUT</a></li>
<li>
<ul id="login">
<li><a href="#">User</a></li>
<li><a href="#">Logout</a></li>
</ul>
</li>
</ul>
</nav>
不知道是否是因爲HTML引擎,但現在犯規讓我選擇子菜單裏面的物品。如果移動鼠標非常慢,嘗試移到「HOME」下方時子菜單消失 –
爲什麼不使用'.menu .sub-menu'而不是'.menu ul'?無論如何,很難得到你想要達到的目標。 – Stickers
@Pangloss我想看到四個項目'主頁關於用戶註銷'現在最後兩個不顯示。如果我使用':not'選擇器將顯示,但子菜單停止工作 –