CSS偽類,相信大家都不陌生。它包含了link、visited、hover、active等四個(gè)選擇器。下面我將結(jié)合自己的實(shí)際編碼測(cè)試,來分析它們分別可以作用的對(duì)象。
1、不論是否結(jié)合“+”選擇器和“~”選擇器,link、visited只能作用于元素自身;
2、在不結(jié)合“+”選擇器和“~”選擇器的情況下,hover、active不僅可以作用于元素自身,同時(shí)也可以作用于元素的后代元素(即子級(jí)、孫級(jí)...只要是父級(jí)包含的元素即可);
順帶要提一下的是,在元素同時(shí)擁有l(wèi)ink、visited、hover、active這四個(gè)選擇器時(shí),hover必須位于link和visited之后,否則hover會(huì)失效;而active必須位于最后,否則同樣失效。
3、在結(jié)合“+”選擇器的情況下,hover和active能夠作用于同一個(gè)父級(jí)下的下一個(gè)同級(jí)元素,及其后代元素身上。比如下圖中的四個(gè)塊級(jí)元素:

當(dāng)我們給father2:hover的時(shí)候,利用“+”選擇器,可以將hover的作用加在father3或son3身上,但是不能加在father1、son1、father4、son4的身上。這是由于“+”選擇器本身的性質(zhì)導(dǎo)致的。
4、在結(jié)合“~”選擇器的情況下,可以實(shí)現(xiàn)給father2:hover的時(shí)候,hover作用于father3、son3、father4、son4...的元素身上,同理也適用于active。所以在結(jié)合偽類作用時(shí),“~”選擇器比“+”選擇器的功能更加強(qiáng)大了。
今后我們?cè)谑褂胔over或active時(shí),可以先考慮一下需要實(shí)現(xiàn)何種效果,再進(jìn)行html的布局。
如果你能看到這了..那說明你真是毅力驚人,——我寫得都累了...好吧,本人是個(gè)前端小白,最近剛剛?cè)肟樱袝r(shí)候會(huì)遇到一些小白級(jí)別的問題,網(wǎng)上沒有相關(guān)資料的話,我會(huì)自己去編碼測(cè)試,驗(yàn)證效果。以上就是我自己測(cè)試得來的,如果有不對(duì)的地方,希望有大牛能幫我指正~