HTML:CSS選擇器沒有其類
<div id="header">
<div id="one">
<ul class="menu">
<li>one text</li>
</ul>
</div>
<div id="two">
<ul class="menu">
<li>one text</li>
</ul>
</div>
</div>
這個CSS將無法正常工作
#header ul.menu{
background-color: red;
text-align: left;
}
#two ul{ /*this line*/
background-color: blue;
text-align: right;
}
這個CSS工作
#header ul.menu{
background-color: red;
text-align: left;
}
#two ul.menu{ /*this line*/
background-color: blue;
text-align: right;
}
這是爲什麼呢?
更新
按照答案上CSS具體#header ul.menu
比#two ul
更具體。我仔細弄清楚了ul.menu比ul更具體。
ul.menu{...}
#two ul{...} /* works exactly, yes #two is more specific than ul.menu */
好吧,更改順序
順序1:
#header ul.menu{
background-color: red;
text-align: left;
}
#two ul.menu{ /* this selector works as per the specificity */
background-color: blue;
text-align: right;
}
爲什麼#two ul.menu
比#header ul.menu
更具體? (演示不需要以此爲頂部第一演示顯示了這一點)
爲了2:
#two ul.menu{
background-color: blue;
text-align: right;
}
#header ul.menu{ /* this selector works as per the specificity */
background-color: red;
text-align: left;
}
爲什麼#header ul.menu
比#two ul.menu
更具體? demo
瞭解更多關於CSS的特異性[** **這裏(http://css-tricks.com/specifics-on-css-specificity/) – Sourabh