2010-04-16 59 views
2

我想先感謝了規範CSS的官方鏈接(和部分),該解釋,如果:CSS特性和CSS繼承(具體問題)?

.one two h1 {color:green;font-family:arial;} /*case 1 */ 
.one two h1 {color:blue;} /*case 2*/ 

將導致(當瀏覽器評估)

.one two h1 {color:blue;font-family:arial;} /*case 3*/ 

或將它是:

.one two h1 {color:blue;} /*case 4*/ 

==>我已經閱讀了很多關於繼承,特異性,級聯等,但我還沒有發現針對給定的例子規則適用^ h ERE。

關於特殊性,兩個元素在特定性上是相等的:然而,case2將「贏」,因爲它是相同的特定的,但最後一個(!!)一個聲明(=最具體)。 但是,特定性總是適用於整個選擇器,並定義了所有屬性。或者僅限於「競爭」(並在兩者中聲明)的屬性。

謝謝!!!!

回答

1

這將是.one two h1 {color:blue;font-family:arial;} /*case 3*/

http://www.w3.org/TR/CSS2/cascade.html#cascading-order

「最後,排序順序規定:如果兩個聲明具有相同的重量,產地和特異性,後者指定勝聲明中導入的樣式表被視爲在樣式表本身的任何聲明之前。「

1

這將是:

.one two h1 {color:blue;font-family:arial;} /*case 3*/ 

後來的規則覆蓋以前的CSS屬性的一個接一個。