大於的用法
用法一:把多個同樣層級的子元素一起加上同個樣式
參考文章:http://null.wehan.net/511
如果沒用大於,假設#all內的h1~h6都要加同樣的顏色,寫法會是
#all h1,#all h2,#all h3,#all h4,#all h5,#all h5{color:#fff;}
如果用大於可以改寫成
#all > h1,h2,h3,h4,h5,h6{colorL#fff;}
要注意到的是,這個大於只針對子元素。如果hx跟#all的關係不是子元素、而是孫元素,就不會被套用。
實做後有誤,後來仔細想想,加了逗號(,)的項目基本上就跟前面的> 沒有關係了,所以這個寫法本身有問題。有沒有比較好的寫法要再想想。不過剛剛熊熊想到,如果要針對不同元素下同一屬性,加 class不就好了 …..囧
用法二:只針對相同標籤、但屬於子元素者加樣式、孫元素不加
參考文章:http://www.cnblogs.com/image/archive/2010/11/15/1877735.html
因為只針對子元素,所以假設原始碼為
<ul>
<li>A</li>
<li>B</li>
<li>C
<ul>
<li>C-1</li>
</ul>
</li>
</ul>
<div>
<p><span></span></p>
<span></span>
<span></span>
</div>
如果寫法是
ul li{color:#fff;}
div span{color:#fff;}
所有 li 都會是白色,所有span都會是白色,但是如果改寫成
ul > li{color:#fff;}
div > span{color:#fff;}
只有在ul div下第一層的 li 第二、三個span會是白色,li p底下的 li span不會被影響。
我終於知道為什麼 wordpress 寫選單的時候會大量使用到大於符號了….
我原本寫的範例錯了。不能使用同樣標籤,不然孫元素會繼承子元素的的樣式,因此失去用 > 過濾的機制。
加號的用法
參考文章:http://null.wehan.net/479
加號指兄弟節點,等於把樣式只套用在+之後指定的兄弟節點上, +之前的則不套用該樣式