2015-04-06 65 views
0

比方說,我有這個在我的CSS:CSS代碼違反默認的CSS代碼,好還是不好?

div { 
margin: 0; 
overflow: auto; 
padding: 1%; 
text-align: center; 
word-wrap: break-word; 
} 

這應該是所有的div默認代碼。但是,如果我有一個代碼,另一個DIV違背此默認:

div.a { 
background-color: #ffffff; 
border: 2px solid; 
text-align: left; 
} 

正如你可以看到,有一個與背景色或邊框沒有矛盾,但存在這樣一個矛盾,這個div的文本 - align:left,而默認值是text-align:center。我已經用html頁面實際使用了這些代碼,並且發現瀏覽器不會解釋它。但是我想知道這是否仍然是不好的做法,或者可能導致問題出現。

+3

一旦你學會了什麼是「C」在CSS意味着你將已經回答了你自己的問題 – 2015-04-06 01:58:30

回答

1

在樣式表中不可能存在矛盾 - 選擇器要麼更具體(如此重寫不太具體的選擇器),要麼稍後再來,並覆蓋以前的選擇器規則。

在您的示例中,div.a選擇器更具體,因爲它按類選擇而不僅僅是標記名稱。這意味着如果你的div.a規則出現在div規則之前或之後並不重要,div.a規則將始終適用,因爲它們更具體。

特殊性規則起初可能看起來很複雜,但您很快就會習慣它們。

https://css-tricks.com/specifics-on-css-specificity/

+0

這一點,這就是爲什麼這會在兩個DIV選項中選擇: '

blah
'當然,除非在某處使用'!important'覆蓋。 – Mohammad 2015-04-06 03:52:40