1. 程式人生 > >CSS ID選擇器與類選擇器的區別

CSS ID選擇器與類選擇器的區別

CSS中ID選擇器與類選擇器的用法看起來很相似,但是它們有以下兩個區別

1.原則上ID選擇器只能使用一次,而類選擇器可以不限次數使用

<html>
<head>

<style type="text/css">
    #red {color:red;}
    .blue {color:blue;}
</style>

</head>

<body>

<!--原則上id選擇器只能用一次,但是現在用兩次依然表現正常,為什麼呢?-->
<p id="red">這個段落是紅色。</p>
<p
id="red">
這個段落是紅色。</p> <!--類選擇器可以無限次使用--> <p class="blue">這個段落是藍色。</p> <p class="blue">這個段落是藍色。</p> </body> </html>

表現結果

這裡寫圖片描述

可以看到,id選擇器即使使用兩次依然表現正常,什麼情況這是?

其實這樣寫,在css裡是可以的。但如果頁面涉及到js,就不好了。因為js裡獲取DOM是通過getElementById,而如果頁面出現同一個id幾次,這樣就獲取不到了。所以id要有唯一性。

最後,成熟網站裡,你很少看到css裡用id選擇器的,都是用class,id選擇器留給寫js的人用,這樣避免衝突。

[引自百度知道]

2.一個標籤可以使用多個類選擇器,但只能使用一個ID選擇器

<html>
<head>

<style type="text/css">
#red {color:red;}
#small {font-size:10px}
.blue {color:blue;}
.big{font-size:30px}
</style>

</head>

<body>

<p id
="red">
這個段落字型是紅色。</p> <p id="small">這個段落字型比較小。</p> <p id="red small">這個段落字型又紅又小。</p><!--不行的--> <p class="blue">這個段落字型是藍色。</p> <p class="big">這個段落字型比較大。</p> <p class="blue big">這個段落字型又藍又大。</p><!--沒問題--> </body> </html>

表現結果

這裡寫圖片描述

可以看到,一個標籤可以使用多個ID選擇器時將表現失敗,而使用多個類選擇器時表現正常。