2014-01-10 126 views
3

最近我看到這個在CSS入門書(CSS開始Web開發由西蒙·科裏森,第19頁)CSS中是否需要元素ID?

h1#title{color:red;} 

這是一個element#id結構。

但是,這是必要的嗎?由於ID在一個HTML網頁中是唯一的,因此element不是必需的。

我的理解正確嗎?

回答

2

但是,這是必要的嗎?

它可以,它完全取決於上下文。

對於包含在多個頁面中的同一個CSS文件是非常常見的,在這種情況下,編號不是保證是唯一的。一個頁面可能有<h1 id="title">,另一個頁面可能有<div id="title">,您可能只想要定位其中一個。

這是由你來決定是否更具體比#id是保證。

+0

+1完美*在這種情況下,ID是不能保證是獨一無二的更具體的* – Praveen

1

你說得對。但是,當程序員不想應用這些樣式時,如果有人將h1更改爲其他標籤,如ph2(在html中),這仍然可能非常方便。

5

id是唯一的,但並不意味着這樣使用類似#title只能使用一個文檔中的一個,他們不能被應用到不同的文件等元素,但可以在另一個文件可以用於其他元件,以儘管id是唯一的,但您可以在不同文檔的不同元素上使用它。因此,使用h1#title將強制CSS僅適用於h1元素,該元素具有id#title

此外,特異性問題,h1#title#title所以使用類似

#title { 
    color: red; 
} 

VS

h1#title { 
    color: green; 
    /* This will be picked regardless of their order in the stylesheet */ 
} 
+2

+1爲特異性 – meagar

相關問題