2011-01-29 36 views
2

我有這樣的CSS:CSS工作直列但不是在樣式表

 
width: 98px; height: 298px; border: 1px solid; margin: 30px 25px 0px 25px; 

這工作在style=""內嵌樣式很好,但是當我在樣式表中使用的元素完全消失!這是一些瘋狂的行爲在這裏...

有誰知道這個問題的解決方法/解決方法?

UPDATE

如果我從樣式表完全刪除#advert代碼,把CSS內聯,但離開id="advert"它是在DIV,它仍然沒有露面。但是,如果我刪除id="advert位,那麼div顯示罰款...奇怪。

+2

聽起來像[特異性](http://css-tricks.com/specifics-on-css-specificity/)問題,你能提供更多的細節嗎? – thirtydot 2011-01-29 21:14:26

+0

你能分享你的代碼通過jsfiddle.net – Eray 2011-01-29 21:15:01

+0

是否有另一個樣式表加載?也許是外部的? – Harmen 2011-01-29 21:17:19

回答

6

它很可能是你的樣式表中有一個級聯,它以某種方式「隱藏」了元素,而你的內聯樣式重寫了這個元素,所以元素是可見的。但是,將規則移入樣式表時,它們不再覆蓋,因爲您使用的選擇器的優先級低於「隱藏」該元素的優先級。

您可以使用類似FireBug的工具或Firefox的Web Developer工具欄來檢查和查看所有影響某些內容的CSS。我敢打賭,你會看到額外的東西,你不指望!

5

自從我問這個問題已經很長時間了,但我似乎記得這是由於我使用Adblock Plus引起的 - 它阻止了<div>,因爲它的ID爲advert - 這是一個非常簡單的疏忽。

從那以後,我一直在開發ABP,並且您應該檢查您可能使用的任何插件是否以您不想要的方式阻止/修改您的HTML。