CSS的2個冷門卻又實用的選擇器
阿新 • • 發佈:2019-01-03
一般來說我們寫CSS選擇器時,傾向於直接用空格隔開,比如 div p 。
但是這種選擇器選擇範圍太廣,當我們想定位到個別元素,又不想使用獨立的類時,就不方便了。
因此,最近的學習中遇到幾個不常用,但是很好用的選擇器:
第1個" >":
div>p | 選擇父元素為 <div> 元素的所有 <p> 元素。 |
所有主流瀏覽器都支援 element>element 選擇器。
註釋:對於 IE8 及更早版本的瀏覽器中的 element>element,必須宣告 <!DOCTYPE>。
其實這個選擇器,還可以這麼描述:
div > p: 選中div下的所有第一級p元素。舉個栗子,採用如下的方式,span標籤中的內容就無法被選中了。
<div>
<span>
<p>我是唐老鴨。</p>
</span>
<p>我住在 Duckburg。</p>
</div>
第2個" +":
div+p | 選擇緊接在 <div> 元素之後的所有 <p> 元素。 |
所有主流瀏覽器都支援 element+element 選擇器。
註釋:對於 IE8 及更早版本的瀏覽器中的 element+element,必須宣告 <!DOCTYPE>。
這個選擇器其實選中的是div之後緊鄰的第一個p元素。
<div>
<p>我是唐老鴨。</p>
<p>我住在 Duckburg。</p>
</div>
<p>我最好的朋友是米老鼠。</p>
<p>我的樣式不會改變。</p>
第3個" nth-child":
p:nth-child(2) | 選擇屬於其父元素的第二個子元素的每個 <p> 元素。 | 3 |
所有主流瀏覽器均支援 :nth-child() 選擇器,除了 IE8 及更早的版本。
nth-child( n ) , 這個選擇器不支援IE8,但是在一些大型的網站上都有使用,用起來感覺還是挺方便的。
參考文件:
http://www.w3school.com.cn/cssref/css_selectors.asp