2013-07-30 35 views
0

由於IE8不能很好地處理PNG 24透明膠片,因此我決定將PNG的容器div的背景圖像加入nix中,以便背景與我的PNG背景相匹配。使用內聯樣式更改IE8頁面元素?

基本上,我想擺脫IE8或更早版本瀏覽器中#myDiv的背景圖片。

在我的網頁的標題我用:

<!--[if lte IE 8 ]> <style> 
#myDiv{margin-top:20px;} 
#myDiv{background-image: none;} 
</style> <![endif]--> 

更改邊距工作正常(與我對IE8進行的所有其它調整一起)。然而,無論我嘗試什麼,背景圖像依然出現!在我的外部樣式表中擺脫它,我似乎無法使它不出現。

事實上,當頁面加載時,它看起來像代碼最初擺脫它,但它回來了。我認爲內聯樣式總是勝過外部樣式表。我錯了嗎?

我檢查了我的css @media的東西,並沒有任何內容可能會將它帶回來。我清除了瀏覽器緩存並刷新了。還在那兒。

任何人都有任何線索爲什麼#myDiv的背景圖片不斷回來?

編輯:我正在wordpress網站的header.php模板。 (這就是我在上面插入代碼的地方。)所以,在這種情況下,外部樣式表的確可以勝過內聯樣式?我不明白爲什麼它應該,但這可能是答案嗎?

+1

至於我我知道,IE8 *應該*支持alpha透明與PNGs。它需要24位嗎?您可以使用8位PNG進行Alpha透明度處理,我知道*可以*在IE7中工作:http://www.sitepoint.com/png8-the-clear-winner/ – cimmanon

+0

是設置背景圖像的選擇器恰好是相同的ID。事實上,我從外部樣式表中刪除了該屬性,以確保這是背景圖片的來源。從外部樣式表中刪除它可以刪除圖像,但不會顯示上面的代碼。這真讓我抓狂。 –

+0

@cimmanon:我在我使用的滑塊中有一堆24位圖像,而且它們很豐富,所以我不想嘗試將它們更改爲8位。我認爲這將是很容易的,只是擺脫周圍的div中的背景圖像。 –

回答

0

我知道這不是一個完美的解決方案,但會添加背景圖像作爲媒體查詢工作(因爲IE8不支持媒體查詢)?

@media (min-width: 1px) {#myDiv{background-image:url(/etc/etc/etc.png);}} 
+0

認爲這可能有效,但奇怪的是,IE8馬上開始閱讀媒體查詢並設置背景圖片。 :^( –