2010-09-08 22 views
4

鑑於CSS:指定對象比通用點更重要嗎?

<div class="foo"> 
    <span class="bar"></span> 
</div> 

我一直所定義的CSS類爲:

.foo 
{ 

} 
.bar 
{ 

} 

是指定對象很重要,或者最終是爲了便於閱讀,因此您可以快速查看您正在尋找哪種類型元素編輯時? IE:

div.foo 
{ 

} 
span.bar 
{ 

} 
+1

只是fyi'object'被稱爲元素(div元素,span元素)(不要試圖成爲wiseass,對不起:P) – 2010-09-08 09:41:14

回答

7

這對於元素特異性是重要的。

.foo目標任何元素具有一類"foo"

div.foo目標<div>有一類"foo"秒。這意味着沒有選擇具有該類的其他元素。

如果您確定只有一種元素會承載給定的類,那麼我猜爲了可讀性在元素名稱前加上類別選擇器沒有任何問題,或者如果您懶惰地輸入元素名稱。

但是,如果你認爲其他元素可能會承擔這一類 - 如果它像leftlarger-fontsep一個非常通用的名稱,例如,這是一個好主意,這樣做,所以你確定你的造型正確的元素。

如果有通過與給定類中的任何元素共享任何常見的樣式,你只指定類選擇並添加常見的樣式出現,再經過指定,涉及到每個元素的任何樣式。例如:

.foo { /* Generic styles for foo class */ } 
div.foo { /* Styles for <div>s with foo class */ } 
blockquote.foo { /* Styles for <blockquote>s with foo class */ } 
+0

如果沒有定義,爲什麼會有另一個具有相同類的元素? – 2010-09-08 09:30:04

+0

我已經擴展了我的答案。 – BoltClock 2010-09-08 09:32:17

+0

我用這個'div.foo'符號時,我有風格我想在像'div.blue-text'和'span.blue-text'例如不同的元素來重新創建。 – Kyle 2010-09-08 09:34:05

2

除了Boltclock的回答,有一個在CSS如何遍歷DOM,可以對樣式表的處理速度的效果的差異。例如,Mozilla建議不要在該類之前使用該元素:https://developer.mozilla.org/en/Writing_Efficient_CSS

在ID的情況下,無論如何,我傾向於使用它,純粹出於可讀性的原因。

相關問題