css(>)中的直接子選擇器選擇直接子類並將顏色傳遞給它們,但是當涉及到文本修飾時,它也會選擇其他元素。怎麼來的?CSS:直接加減選擇器。它選擇非直接子元素
http://codepen.io/anon/pen/dDJmE
顏色我看到它僅選擇直接descedants,但爲什麼不是文字修飾的行爲是否正確?我錯過了什麼?
CSS
li {
text-decoration: none;
color: black;
}
ol.numbers > li {
text-decoration: underline;
color: red;
}
HTML
<ol class="numbers">
<li> First! </li>
<li> Second!
<ul>
<li> hehe </li>
<li> huhu
<ol>
<li> nested! </li>
</ol>
</li>
</ul>
</li>
<li> Third! </li>
<li> Fourth!
<ol>
<li> oh lala </li>
</ol>
</li>
</ol>
請注意,我們要求您將您的代碼包含在您的問題中,而不是鏈接到它。這樣,如果其他人看到這個問題並且鏈接的代碼消失了,他們仍然可以推導出解決方案。 – mrtsherman 2013-03-02 22:13:11
[CSS文本修飾屬性不能被子元素覆蓋]的可能重複(http://stackoverflow.com/questions/4481318/css-text-decoration-property-cannot-be-overridden-by-child-element) – 2013-03-02 22:32:09
只是爲了說清楚:問題不在於選擇器,而在於文本裝飾的工作原理。 – 2013-03-02 22:35:03