2014-01-22 95 views
0

我期望上面的規則覆蓋第二個,但不是。爲什麼?試圖覆蓋規則

body div#wrap_all header#header div#header_main div.container nav.main_menu div.avia-menu ul:first-child > li a { 
    height: 50px !important; 
} 

#header_main .container, .main_menu ul:first-child > li a { 
    height: 88px; 
} 
+0

我幾乎可以肯定第一條規則沒有被應用。 –

+0

你可以使用這些規則發佈一些代碼嗎?順便說一句,嘗試從第一條規則的開頭刪除「body div」,並​​在「header」和「#header」之間放置一個空格。 –

+0

@Unykvis wt是這個原因嗎? – Anup

回答

0

嘗試第二規則添加到第一行:

body div#wrap_all header#header div#header_main div.container nav.main_menu div.avia-menu  ul:first-child > li a, 
.main_menu ul:first-child > li a{ 
    height: 50px !important; 
} 

如果一切正常,這意味着沒有施加否則它應該是壓倒一切的第一個規則。

2

您應該計算出你的CSS規則的特殊性,以找出爲什麼一個被接管另一: http://coding.smashingmagazine.com/2007/07/27/css-specificity-things-you-should-know/

100每個ID,加10爲每個屬性,類或僞類,加 1每個元素的名稱或僞元素

另外,使用!important標誌應絕對保證它比你的第二個規則更具體:

一個!important聲明的樣式表的作者提供了一種 給出一個CSS值更多的重量比它自然有

如果這還沒有的情況下我會想象,有一個style屬性或第三方腳本擋道。

+0

中看到它,所以第一個更具體,所以它應該覆蓋第二個..但是這不是我的情況。 – ziiweb

+0

正確。如果可能的話,我希望看到一個小提琴在行動,因爲我無法想象任何情況下,第二個將出現在頂部,特別是給你!重要的標誌。 – CodingIntrigue

+0

這裏是jsfiddle:http://jsfiddle.net/xJ4EG/正如你所說的第二個沒有被應用,但爲什麼在我的代碼被應用? – ziiweb