如果已經在元素中標識了class或id,就可以在選擇器中使用這個標準,從而只對已標識的元素進行格式化。不過推薦使用類選擇器,一會兒我會解釋理由。 要在class選擇器和id選擇器之間作出選擇的時候,建議儘可能地使用class選擇器。這主要是因為我們可以復用class選擇器。有人提議完全不使用id選擇 ...
如果已經在元素中標識了class或id,就可以在選擇器中使用這個標準,從而只對已標識的元素進行格式化。不過推薦使用類選擇器,一會兒我會解釋理由。
要在class選擇器和id選擇器之間作出選擇的時候,建議儘可能地使用class選擇器。這主要是因為我們可以復用class選擇器。有人提議完全不使用id選擇器,我贊同這種觀點,並且在自己的工作中始終遵循這一點,但最終的決定權掌握在網站開發人員手中。
id選擇器會引入下麵兩個問題。
一,與它們關聯的樣式不能在其他元素上復用(記住,在一個頁面中,一個id只能出現在一個元素上)。這會導致在其他元素上重覆樣式,而不是通過class共用樣式。
二,它們的特殊性比class選擇器要強得多。這意味著如果要覆蓋使用id選擇器定義的樣式,就要編寫特殊性更強的CSS規則。如果數量不多,可能還不難管理。如果處理規模較大的網站,其CSS就會變得比實際所需的更長、更複雜。
隨著你處理的CSS越來越多,你對這兩點的理解也會更加清晰。(另一方面,有人喜歡使用id選擇器的原因之一就是使用它們一眼就能看出元素是唯一的。不過,依照個人經驗,這點好處還不足一均衡它帶來的弊端。另外,萬一你哪天改變了網站設計,原先唯一的元素不再唯一,id選擇器就不合適了。)
因此,推薦的做法是尋找能將共用樣式結合進一個或多個class的機會,從而可以對它們進行復用,同時,如果確實要使用id選擇器,也應該儘量少用。這樣,你的樣式表會比較短,更易於管理。需要說明的是,id選擇器在HTML中仍具有重要的作用。通過它們可以在頁面中定義錨,在編寫JavaScript為特定的頁面元素應用特殊行為時它們尤其具有重要的價值。
摘自《HTML5 and CSS visual QuickStrat Guide》