天天看點

css3的相鄰選擇器,CSS選擇器之相鄰兄弟選擇器

選擇器是css裡面非常重要的一部分知識,根據不同的樣式定義,CSS提供了不同類型的選擇器,大家可以根據自己的實際情況選擇合适的選擇器來編寫代碼,前面的課程我們對類選擇器,子元素選擇器等作了介紹,下面讓我們一起來探讨一下相鄰兄弟選擇器。

一、定義

相鄰兄弟選擇器(Adjacentsiblingselector)可選擇緊接在另一進制素後的元素,且二者有相同父元素。

例如,如果要改變緊接在h2元素後出現的段落的字型顔色,可以這樣寫:

h2 + p {color:green;}

二、文法解釋

1.選擇器的讀法

h2 + p {color:green;}

這個選擇讀作:“選擇緊接在h2元素後出現的段落,h1和p元素擁有共同的父元素”。

2.選擇器的結合符

由上面的代碼,我們可以清楚地知道,相鄰兄弟選擇器的結合符是“+”。

注意:與子結合符一樣,相鄰兄弟結合符旁邊可以有空白符。

接下來,我們先看一個文檔樹片段:

css3的相鄰選擇器,CSS選擇器之相鄰兄弟選擇器

在上面的片段中,div元素中包含兩個清單:一個無序清單,一個有序清單,每個清單都包含三個清單項。這兩個清單是相鄰兄弟,清單項本身也是相鄰兄弟。這個很容易了解!

這裡,我們需要注意一點:第一個清單中的清單項與第二個清單中的清單項不是相鄰兄弟,因為這兩組清單項不屬于同一父元素(最多隻能算堂兄弟)。

我們再來看一段代碼:

css3的相鄰選擇器,CSS選擇器之相鄰兄弟選擇器

運作效果如下:

css3的相鄰選擇器,CSS選擇器之相鄰兄弟選擇器

很明顯,第一個p元素應用了規則,即表明第一個p元素與h2元素是相鄰兄弟。

特别提示:用一個結合符隻能選擇兩個相鄰兄弟中的第二個元素。如上面的代碼,選擇器隻會把第一個p元素改變了字型顔色,而其他的p元素字型顔色并沒有發生改變。

三、結合其他選擇器

相鄰兄弟結合符還可以結合其他結合符

css3的相鄰選擇器,CSS選擇器之相鄰兄弟選擇器

嘻嘻,這個選擇器一眼看上去,是否有一種摸不着頭腦的感覺。其實這個選擇器解釋為:選擇緊接在table元素後出現的所有兄弟ul元素,該table元素包含在一個body元素中,body元素本身是html元素的子元素。

好了,相鄰兄弟選擇器的相關内容,今天就簡單地介紹到這裡。希望大家課後能在與其他選擇器結合使用這一塊多作嘗試,為日後能合理正确使用選擇器打下堅實的基礎。如果您想了解更多不同類型的選擇器,歡迎繼續關注我們的課課家網站喔!