2013-06-21 63 views
3

覆蓋默認hr看的時候我一直現在要問這一段時間,例如,是它更好地做到這一點:CSS - 在同一個選擇器上設計樣式之前重寫屬性是否是一種好習慣?

hr { 
    border: none; 
    border-top: 1px dashed #000; 
} 

或者這樣:

hr { 
    border-top: 1px dashed #000; 
    border-left: none; 
    border-right: none; 
    border-bottom: none; 
} 
+0

我會說在這裏沒有真正的對或錯,我個人會使用頂部的例子,因爲這種方式有更少的混亂(和稍小的文件大小),但它可能是一個個人喜好比對或錯 – naththedeveloper

+0

是的,我通常會選擇頂級示例,實際上我只是通過css驗證程序來運行它,它證實了很好,嗯,但我依稀記得有些地方有類似的東西是不好的練習 –

+0

這並不罕見,因爲這種重寫被用作在某些情況下可能會倒退。例如: 寬度:50px; 寬度:5rem; Rem不是一個完全支持的單元,所以如果在IE中他們不會識別rem,而仍然使用第一個聲明。 –

回答

3

你的第一個例子:

hr { 
    border: none; 
    border-top: 1px dashed #000; 
} 

等同於:

hr { 
    border-top: none; 
    border-right: none; 
    border-bottom: none; 
    border-left: none; 
    border-top: 1px dashed #000; 
} 

http://www.w3.org/TR/CSS2/box.html#propdef-border

所以,可以說,你申請的規則,以相同的屬性兩次,但這不是值得關注的事情。

2

沒有什麼在這兩個例子中都是錯誤的,但是第一個例子代碼少了,所以我更喜歡第一個例子

相關問題