nth-child(),是CSS3中的一個僞類選擇符。這裏介紹的是 nth-child() 的語法和用法:語法: :nth-child(an+b) 描述:僞類:nth-child()的參數是an+b
舉例用法
tr:nth-child(odd)
tr:nth-child(2n)
第一種:簡單數字序號寫法
:nth-child(number)
直接匹配第number個元素。參數number必須爲大於0的整數。
例子:
li:nth-child(3){background:orange;}
第二種:倍數寫法
:nth-child(an)
匹配所有倍數爲a的元素。其中參數an中的字母n不可缺省,它是倍數寫法的標誌,如3n、5n。
例子:
li:nth-child(3n){background:orange;}
第三種:倍數分組匹配
:nth-child(an+b) 與 :nth-child(an-b)
先對元素進行分組,每組有a個,b爲組內成員的序號,其中字母n和加號+不可缺省,位置不可調換,這是該寫法的標誌,其中a,b均爲正整數或0。如3n+1、5n+1。但加號可以變爲負號,此時匹配組內的第a-b個。
例子:
li:nth-child(3n+1){background:orange;}
li:nth-child(3n+5){background:orange;}
li:nth-child(5n-1){background:orange;}
li:nth-child(3n±0){background:orange;}
li:nth-child(±0n+3){background:orange;}
第四種:反向倍數分組匹配
:nth-child(-an+b)
此處一負一正,均不可缺省,否則無意義。這時與:nth-child(an+1)相似,都是匹配第1個,但不同的是它是倒着算的,從第b個開始往回算,所以它所匹配的最多也不會超過b個。
例子:
li:nth-child(-3n+8){background:orange;}
li:nth-child(-1n+8){background:orange;}
第五種:奇偶匹配
:nth-child(odd) 與 :nth-child(even)
分別匹配序號爲奇數與偶數的元素。奇數(odd)與(2n+1)結果一樣;偶數(even)與(2n+0)及(2n)結果一樣。
衍生僞類
•E:nth-last-child(n): 選擇某個子元素,從最後一個數起
•E:nth-of-type(n): 選擇某個某種類型的子元素
•E:nth-last-of-type(n): 選擇某個某種類型的子元素,從最後一個符合條件的元素數起
•E:first-child: 選擇第一個子元素(這個僞類在CSS2裏就有)
•E:last-child: 選擇最後一個子元素