jQuery 順便學(xué)習(xí)下CSS選擇器 奇偶匹配nth-child(even)
更新時(shí)間:2010年05月24日 15:11:12 作者:
今天學(xué)習(xí)jQuery,看到nth-child(even)用法,特意找了下這個(gè)選擇器的用法,在CSS3標(biāo)準(zhǔn)中,用法很強(qiáng)大。
對(duì)此,我把CSS3標(biāo)準(zhǔn)中nth-child()用法大致介紹下:
CSS3偽類選擇器:nth-child()
簡單的歸納下nth-child()的幾種用法。
第一:nth-child(number) 直接匹配第number個(gè)元素。參數(shù)number必須為大于0的整數(shù)。
(EG) li:nth-child(3){background:orange;}/*把第3個(gè)LI的背景設(shè)為橙色*/
第二:nth-child(an) 匹配所有倍數(shù)為a的元素。其中參數(shù)an中的字母n不可缺省,它是倍數(shù)寫法的標(biāo)志,如3n、5n。
(EG) li:nth-child(3n){background:orange;}/*把第3、第6、第9、…、所有3的倍數(shù)的LI的背景設(shè)為橙色*/
第三:nth-child(an+b) 與 :nth-child(an-b) 先對(duì)元素進(jìn)行分組,每組有a個(gè),b為組內(nèi)成員的序號(hào),其中字母n和加號(hào)+不可缺省,位置不可調(diào)換,這是該寫法的標(biāo)志,其中a,b均為正整數(shù)或0。如3n+1、5n+1。但加號(hào)可以變?yōu)樨?fù)號(hào),此時(shí)匹配組內(nèi)的第a-b個(gè)。(其實(shí)an前面也可以是負(fù)號(hào),但留給下一部分講。)
(EG)li:nth-child(3n+1){background:orange;}/*匹配第1、第4、第7、…、每3個(gè)為一組的第1個(gè)LI*/
li:nth-child(3n+5){background:orange;}/*匹配第5、第8、第11、…、從第5個(gè)開始每3個(gè)為一組的第1個(gè)LI*/
li:nth-child(5n-1){background:orange;}/*匹配第5-1=4、第10-1=9、…、第5的倍數(shù)減1個(gè)LI*/
li:nth-child(3n±0){background:orange;}/*相當(dāng)于(3n)*/
li:nth-child(±0n+3){background:orange;}/*相當(dāng)于(3)*/
第四:nth-child(-an+b) 此處一負(fù)一正,均不可缺省,否則無意義。這時(shí)與:nth-child(an+1)相似,都是匹配第1個(gè),但不同的是它是倒著算的,從第b個(gè)開始往回算,所以它所匹配的最多也不會(huì)超過b個(gè)。
(EG) li:nth-child(-3n+8){background:orange;}/*匹配第8、第5和第2個(gè)LI*/
li:nth-child(-1n+8){background:orange;}/*或(-n+8),匹配前8個(gè)(包括第8個(gè))LI,這個(gè)較為實(shí)用點(diǎn),用來限定前面N個(gè)匹配常會(huì)用到*/
第五:nth-child(odd) 與 :nth-child(even) 分別匹配序號(hào)為奇數(shù)與偶數(shù)的元素。奇數(shù)(odd)與(2n+1)結(jié)果一樣;偶數(shù)(even)與(2n+0)及(2n)結(jié)果一樣。
jQuery中用此方法可以實(shí)現(xiàn)條紋效果:
$("table tr:nth-child(even)").addClass("striped");
even 可以換成別的參數(shù),上面介紹的五種情況都可以。
后面的addClass("striped") striped 是個(gè)CSS class名稱。
學(xué)習(xí)jquery順便學(xué)習(xí)了 CSS中的一些選擇器。
希望能堅(jiān)持下來。
CSS3偽類選擇器:nth-child()
簡單的歸納下nth-child()的幾種用法。
第一:nth-child(number) 直接匹配第number個(gè)元素。參數(shù)number必須為大于0的整數(shù)。
(EG) li:nth-child(3){background:orange;}/*把第3個(gè)LI的背景設(shè)為橙色*/
第二:nth-child(an) 匹配所有倍數(shù)為a的元素。其中參數(shù)an中的字母n不可缺省,它是倍數(shù)寫法的標(biāo)志,如3n、5n。
(EG) li:nth-child(3n){background:orange;}/*把第3、第6、第9、…、所有3的倍數(shù)的LI的背景設(shè)為橙色*/
第三:nth-child(an+b) 與 :nth-child(an-b) 先對(duì)元素進(jìn)行分組,每組有a個(gè),b為組內(nèi)成員的序號(hào),其中字母n和加號(hào)+不可缺省,位置不可調(diào)換,這是該寫法的標(biāo)志,其中a,b均為正整數(shù)或0。如3n+1、5n+1。但加號(hào)可以變?yōu)樨?fù)號(hào),此時(shí)匹配組內(nèi)的第a-b個(gè)。(其實(shí)an前面也可以是負(fù)號(hào),但留給下一部分講。)
(EG)li:nth-child(3n+1){background:orange;}/*匹配第1、第4、第7、…、每3個(gè)為一組的第1個(gè)LI*/
li:nth-child(3n+5){background:orange;}/*匹配第5、第8、第11、…、從第5個(gè)開始每3個(gè)為一組的第1個(gè)LI*/
li:nth-child(5n-1){background:orange;}/*匹配第5-1=4、第10-1=9、…、第5的倍數(shù)減1個(gè)LI*/
li:nth-child(3n±0){background:orange;}/*相當(dāng)于(3n)*/
li:nth-child(±0n+3){background:orange;}/*相當(dāng)于(3)*/
第四:nth-child(-an+b) 此處一負(fù)一正,均不可缺省,否則無意義。這時(shí)與:nth-child(an+1)相似,都是匹配第1個(gè),但不同的是它是倒著算的,從第b個(gè)開始往回算,所以它所匹配的最多也不會(huì)超過b個(gè)。
(EG) li:nth-child(-3n+8){background:orange;}/*匹配第8、第5和第2個(gè)LI*/
li:nth-child(-1n+8){background:orange;}/*或(-n+8),匹配前8個(gè)(包括第8個(gè))LI,這個(gè)較為實(shí)用點(diǎn),用來限定前面N個(gè)匹配常會(huì)用到*/
第五:nth-child(odd) 與 :nth-child(even) 分別匹配序號(hào)為奇數(shù)與偶數(shù)的元素。奇數(shù)(odd)與(2n+1)結(jié)果一樣;偶數(shù)(even)與(2n+0)及(2n)結(jié)果一樣。
jQuery中用此方法可以實(shí)現(xiàn)條紋效果:
$("table tr:nth-child(even)").addClass("striped");
even 可以換成別的參數(shù),上面介紹的五種情況都可以。
后面的addClass("striped") striped 是個(gè)CSS class名稱。
學(xué)習(xí)jquery順便學(xué)習(xí)了 CSS中的一些選擇器。
希望能堅(jiān)持下來。
相關(guān)文章
javascript loadScript異步加載腳本示例講解
本文講解了javascript異步加載腳本并觸發(fā)回調(diào)函數(shù)的方法,在加載遠(yuǎn)程數(shù)據(jù)的時(shí)候可以用到,下面提供代碼示例和源碼2013-11-11jQuery實(shí)現(xiàn)首頁頂部可伸縮廣告特效代碼
一套使用jQuery 插件實(shí)現(xiàn)的廣告特效代碼,其效果類似全屏廣告,打開網(wǎng)頁后在網(wǎng)頁的第一屏顯示大幅廣告,停留幾秒后慢慢伸縮至標(biāo)準(zhǔn)小圖片顯示在網(wǎng)頁預(yù)留位置上,效果非常不錯(cuò),這里推薦給大家。2015-04-04jquery的總體架構(gòu)分析及實(shí)現(xiàn)示例詳解
學(xué)習(xí)開源框架,童鞋們最想學(xué)到的就是設(shè)計(jì)的思想和實(shí)現(xiàn)的技巧。最近研究jQuery源碼,記錄一下我對(duì)jquery的理解和心得,跟大家分享,權(quán)當(dāng)拋磚引玉。2014-11-11jQuery實(shí)現(xiàn)的指紋掃描效果實(shí)例(附演示與demo源碼下載)
這篇文章主要介紹了jQuery實(shí)現(xiàn)的指紋掃描效果,以完整實(shí)例形式分析了jQuery實(shí)現(xiàn)圖像按照指定模式顯示的相關(guān)實(shí)現(xiàn)技巧,并附帶附示例演示與demo源碼供讀者下載參考,需要的朋友可以參考下2016-01-01jquery中封裝函數(shù)傳遞當(dāng)前元素的方法示例
這篇文章主要給大家介紹了關(guān)于jquery中封裝函數(shù)傳遞當(dāng)前元素的方法,文中給出了詳細(xì)的示例代碼,對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-05-05