2010-01-05 123 views
0

我創建一個導航條和它的使用作了一個無序列表。我想重寫我的風格,因此看起來不同。我試着改變它的類,但是實際的樣式覆蓋了它。由於覆蓋CSS佈局

回答

1

在樣式聲明,使用!important,像這樣:

.myFirstOne { 
    color: blue !important; /* for example */ 
} 

確保你把!important最後。有沒有一種方法可以將屬性從style屬性中分解出來並放入一個類中?這將是這樣做的一個更清潔,不那麼單調乏味的方式,如!important必須來自每一個聲明之後。

對CSS層疊規則的詳細信息,請參閱this link

+0

感謝那些做了 – jmasterx 2010-01-05 01:40:28

+0

+1也許不是解決問題的最佳解決方案,但有時最簡單的解決方案可能是最好的。 – bendewey 2010-01-05 01:42:35

+0

這不是執行此操作的最佳方法。 !重要的是被某些瀏覽器忽略,並且IE6有一個錯誤,其中!重要屬性的順序不會被保留,所以如果你聲明和!重要樣式,並在稍後嘗試重新聲明它,那麼它將無法工作。 – 2010-01-05 01:42:55

1

CSS是順序敏感。

如果你定義的第一個元素的樣式,然後定義所有元素的樣式,然後所有元素的樣式將優先,即使是第一要素。或者,如果您先定義所有元素的樣式,然後定義第一個元素的樣式,那麼當瀏覽器開始計算時,第一個元素的樣式將優先於所有元素的樣式瞭解如何渲染第一個元素。

+0

不總是 - 考慮'.className {color:blue; },元素{color:red; }','這仍然是藍色!'! – 2010-01-05 01:59:58

+0

還,使用'!important'拋出這些關閉,並可能導致完全無視其他屬性(如我已經提到) – 2010-01-05 02:02:06

1

我不perfer使用!important我寧願把一類的第一個元素和風格它這樣:

<!-- html --> 
<ul> 
    <li class="first">first item</li> 
    <li>second item</li> 
    <li>third item</li> 
</ul> 


/* css */ 
ul li { 
    color: blue; 
} 

ul li.first { 
    color: red; 
}