0

我有一個大小爲880kilobytes的背景圖像的着陸頁。 我設定這個規則的背景:IE8 + IE9 - 身體的背景圖像沒有完全加載,沒有顯示

background: #fff url(bg1.png) no-repeat left top; 

問題是,在IE8和9,我不看背景。它似乎並沒有完全下載圖像。使用IE9上的網絡分析器,甚至是Fiddler,我看到加載這個特定映像時出現問題。 此外,如果我打開一個新選項卡並直接導航到圖像,從而加載它,然後刷新着陸頁 - 出現背景圖像!所以很煩......... 我想這是IE緩存機制的問題? 同樣的事情發生在我把它放在img標籤中。只佔用空間但未顯示。

編輯: 在進一步分析我可以指出以下幾點: 1.提琴手我看到的請求,並且與代碼200完成,但得到由IE由於某種原因中斷。 2.它是隨機的。如果我不刷新緩存刷新,它有時可以顯示圖像,有時不顯示它。

有幫助嗎?

+0

,顯然我不知道怎麼在這裏斷行。做好我的工作。 – user2391025

+0

它可能是圖像本身有某種IE不喜歡的腐敗。我建議在圖像編輯器中打開它並重新保存它。如果這是問題,那麼這可能會有幫助。 – Spudley

回答

0

根據您提供的信息,我無法看到您所做的任何錯誤,當然提供了bg1.png的路徑是正確的。該圖像是否與您的源代碼確實在同一個目錄中?

使用CSS復位是一個很好的做法,無論如何,並且可以解決您的問題:

http://meyerweb.com/eric/tools/css/reset/

您也可以針對IE瀏覽器在你的源代碼,並迫使它加載一個單獨的樣式表到其它瀏覽器。

在你的源代碼的頭上:

<!--[if IE]> 
    <link rel="stylesheet" type="text/css" href="css/all_ie_only.css" /> 
<![endif]--> 

然後,在你的CSS目錄下,新建一個名爲 'all_ie_only.css' 文件。在'all_ie_only.css'內部,編寫單獨的規則以使其在IE中運行。

我懷疑更詳細的規則應該得到它的工作:

body { 
background-image: url('bg1.png'); 
background-repeat: no-repeat; 
background-position: left top; 
} 
+0

這不是問題。用2kb圖像代替圖像的作品。這意味着語法足夠好。 – user2391025

+0

@ user2391025對,那麼給出更多的信息。源代碼。 CSS。鏈接到jsfiddler。 – Starkers