2017-02-19 25 views
0

我有下拉菜單,但子導航會從父導航中獲取所有CSS設置。我可以做到它不會佔用任何東西,並且會顯示爲未設定的元素?無法將新的原始值設置爲子元素

結構是這樣的:

<ul> 
    <li>something</li> 
    <li>something 
    <ul> 
     <li>submenu1</li> 
    </ul> 
    </li> 
</ul> 
+0

大多數屬性都是繼承的。您可以通過再次將它們定義爲孩子來解除它們,比如說:'font-weight:unset;' – pol

+0

@pol,請參閱https://jsfiddle.net/rs0tvn9m/。請注意,顏色不會未設置(至少在Chrome中)。 –

+0

有時需要使用'initial'。我從來不需要取消這樣的屬性。 – pol

回答

0

您可以通過外ul的父元素直接添加這些屬性。像這樣:

li { // standard properties 
color: black; 
} 
.menu > ul > li { // properties only for the outer li elements 
color: red; 
} 
0

是的,你可以添加它與「nth-child」。

我解釋給你之前,你知道html文件嵌套,所以我可以選擇,我想

的第n個孩子的使用就像任何標籤的任何的孩子,

[標籤]:第n個孩子([孩子的數量,我想樣式])

下面的例子(你會使用CSS): -

<style> 
ul li:nth-child(3) { 
color: #FAF0F0; 
background-color: black ; 
width: 50px; 
height: 10px; 
} 

這將改變錫爾d li孩子,並且不會改變其他人[因爲我寫了第n個孩子(3)] ,並且將使其成爲#FAF0F0顏色,黑色背景顏色,50px寬度,10px高度。

因此,對於第n個子類,您將能夠設置html文檔的任何元素。

我希望你能理解它:)