'#'是ID選擇器,是CSS語言的基本部分。它將HTML元素與給定的id相匹配。我知道它,但在.css文件中使用.classname {...}
或#idselector
之間的主要區別是什麼。.class和#id:什麼區別/何時使用?
.hello { color:000000;}
或
#hello { color:000000;}
'#'是ID選擇器,是CSS語言的基本部分。它將HTML元素與給定的id相匹配。我知道它,但在.css文件中使用.classname {...}
或#idselector
之間的主要區別是什麼。.class和#id:什麼區別/何時使用?
.hello { color:000000;}
或
#hello { color:000000;}
優先。 ID有更高的優先級,然後是類選擇器。如果你有以下的CSS:
.hello { color:#000000;}
#hello { color:#ff0000;}
假設相同的元素具有「你好」的ID和階級的「你好」該元素的字體顏色,因爲ID具有更高的優先級,則類將是紅色的選擇。
此外,您只能在頁面上擁有一個ID爲'hello'的元素。但是,您可以擁有無限數量的「hello」類元素。
第一與CSS類中的任何元件你好,第二配襯與值你好的ID的任何元件相匹配。例如:
<div class="hello"></div>
<div id="hello"></div>
ID(#hello
)只能用於唯一唯一元素(例如:登錄按鈕)。
類別(.hello
)應該用於可重複的元素(例如:導航菜單按鈕)。
這個回答非常好。但我不能投票你知道。我是一個新用戶,sory。我已經瞭解了其中的差異:) – hakiko 2012-04-28 14:41:45
ID是唯一的,某種元素可能只有一個ID,並且只有一個相同的ID可能存在於頁面上。所以以下是無效的:
<div id="first_id second_id"></div>
<div id="third_id"></div>
<div id="third_id"></div>
然而,類名卻完全相反。一個元素可能有多個類名,並且同一個類名可以在文檔中多次出現。
ID的目的,是要表示網頁(即,首標,主內容的div,頁腳),或內容(消息數149632)的獨特部分的獨特部分。
一個classname的用途是描述多個相同的含義對象。 (即對話框,帖子,菜單項)。
在CSS中,一個#id
具有更高特異性價值,這意味着以下幾點:
<div id="id" class="class">Test</div>
#id { background: red; }
.class { background: green; }
將使股利紅色,因爲ID比類更加具體。
這很清楚,謝謝朋友:) – hakiko 2012-04-28 14:48:32
+1提到特異性http://www.w3.org/TR/css3-selectors/#specificity – 2012-04-28 14:53:07
請注意,一個HTML文檔只能有**一個**元素和一個特定的ID。這應該解釋兩者之間的最大區別... – Oded 2012-04-28 14:37:29
[類或ID]可能的重複(http://stackoverflow.com/questions/719588/class-or-id) – 2012-04-28 17:11:46