HTML有標籤,CSS就有選擇器,選擇器就是賦予內部或者外部樣式表的名字,當查詢到一個或多個HTML元素後,再通過宣告屬性加樣式。常用的樣式選擇器包括:HTML選擇器、類選擇器、ID選擇器、組合選擇器、關聯選擇器、偽類和偽元素。
1 HTML選擇器
HTML選擇器,即HTML的標籤,用來改變一個指定標籤的樣式。任何HTML元素都可以是一個CSS的選擇器,用於找到和選擇器同名的HTML元素。如下所示:
2 類選擇器
同一個選擇器能有不同的類(class),因而允許同一個元素有不同的樣式。例如,開發者也許希望交替顯示段落的背景顏色。
這些類可以在HTML的<p>標籤中使用class屬性引用,每個<p>元素指定一個類名。如下所示:
以上的例子建立了兩個類:dark-row和light-row,供HTML的<p>元素使用,並通過class屬性在HTML中指明元素使用的類。類的宣告也可以不需要相關的元素,只要定義類選擇器時不加點(.)前面的HTML標記即可,這樣這個類就可用於任何元素。如下所示:
.note { font-size: small } /* 為note的類可以被用於任何元素 */
類名是自定義的,一個良好的習慣是在命名類的時候,根據它們的功能而不是根據它們的外觀命名。上述例子中的note類也可以命名為small,但如果開發者決定改變這個類的樣式,使得它不再是小字型的話,那麼這個名字就變得毫無意義了。
另外,一個HTML元素可以同時使用多個類選擇器,同樣使用class屬性指定多個類名,但多個類名之間要使用“空格”分開。如下所示:
<p>第一段</p> /* 為p元素指定了one、two和three三個類 */
3 id選擇器
在HTML頁面中,id屬性指定了某個單一元素,id選擇器用來對這個單一元素定義單獨的樣式。ID選擇器的應用和類選擇器類似,只要把class換成id即可。它們的不同之處在於,id用在唯一的元素上,而class則用在不止一個元素上。定義ID選擇器要在ID名稱前加上一個“#”號,這和類選擇器相同。例如,ID選擇器可以指定如下:
#main { text-indent: 3em } /* 在ID名稱main前加上一個“#”號 */
在下面的例子中,使用id屬性匹配id="main"的段落元素<p>: