2014-01-27 73 views
0

好吧,所以我明白如何使用兩者,但真正除了語義之外還有什麼意義?我的意思是,如果我爲一個單一的,唯一的元素創建一個類,並且只在該元素上使用它,會產生什麼負面影響?CSS的類和ID的差異

另外,我知道你可以指定只某些元素由類來實現,例如:

p.class{blazziblazzi} 

現在,只有元素「P」將是這個類的效果,如果該元素是分配給那個班級。那麼爲什麼有人會把這個類分配給一個元素,如果他們不想讓這個元素接受這個類的屬性呢?

我只是不明白爲什麼他們甚至把身份證和班級分開,對我來說似乎毫無意義。

任何指針都會有幫助,謝謝!

+0

看看[特異性](http://www.w3.org/ TR/CSS2/cascade.html#特異性)'id'比一個類更具體。 –

回答

3
  • ID是唯一

每個元素只能有一個ID 每個頁面都可以使用該ID只有一個元素

  • 類不是唯一

你可以在多個元素上使用相同的類。 您可以在同一元素上使用多個類。

http://css-tricks.com/the-difference-between-id-and-class/

類不應該用它來重寫代碼,我的意思是,你必須避免編寫相同的,那麼您使用的一類,而不是分配給每個ID相同的屬性。

例如:

如果你有兩個要素:

<div id="div1" class="divYellow"> 
</div> 
<div id="div2" class="divYellow"> 
</div> 
如果你想要黃色背景

,你可以這樣做:

#DIV1 { 背景色:黃色; }

\# div2 
    { 
     background-color: yellow; 
    } 

但它是最好的,你這樣做:

。 divyellow { background-color:yellow; }

當你想改變這種方式,你只是做在課堂上,而不是在兩個地方

+0

謝謝您的回覆,但是,我已將相同的ID分配給五個不同的部門,並且工作完好。這是爲什麼? – Eedis

+0

它的工作原理,但是當你想找到一個特定的div會讓它變得複雜。 除此之外,頁面上每個元素的ID都是唯一的。 – Nathaniel

0

如果使用ID將在第一次出現時停止。
如果它是一個類,它將掃描整個文檔以確保沒有其他事件發生。

即使有一個班級出現,仍然需要掃描整個文件以確保沒有任何文件。它會導致選擇和運行時提取數據的問題,給出各種選擇器。

+0

那麼爲什麼有人會選擇使用ID超過Class?在我看來,僅僅是個人選擇而已。 – Eedis

+0

ID:是主鍵。它應該只存在一次。 職業:可以多次設置。 Id有它的用途,因爲它是一個理想的快速搜索....因爲它會停止,一旦發現密鑰,意味着而不是搜索所有N個對象,它會搜索可能類似n/2 – Fallenreaper

+0

有一個緩慢的網頁是壞mmkay ?使用適當的設計儘可能快地保持它。 – Fallenreaper

1

特異性是原因之一。您可以按照評論中的鏈接查看相關信息。另外,當你需要添加錨鏈接時,你必須使用id,類將不起作用。另外,在使用javascript和其他語言時,id對指定項目特別有用。在CSS中,爲單個項目指定類沒有任何壞處,但將id用於可能模仿其他元素樣式的元素和類是一種更好的做法。

0

ü可以例如縮短您的CSS。通過多次使用類名,您可以在CSS中保存一些行。我只會推薦這個,如果你想用你的CSS的大部分爲多個div的。如果類名保持不變,則可以在不同的ID內進行小的更改。