解決IE8背景圖片錯位和不顯示的問題


IE8中,CSS加載的背景圖片右側有1PX的豎線   解決方案:padding-left:1px 

 

最近新設計了一個宣傳產品的網頁,當覺得一切都沒有問題的時候,然后再IE8中打開這個網頁測試的時候,返現網頁的整個背景圖片都錯位1px左右,雖然是一個很小的錯誤,但是對於一個WEB開發者來說是無法容忍的事情。可奇怪的是這個網頁在IE6、IE7、Firefox這些主流瀏覽器下卻能夠很正常的顯示。更奇怪的是,我用IETester測試工具在IE8模式下測試又沒有錯位的現象,徹底被IE8瀏覽器搞糊塗了。雖然IE8還包含有很多的小問題,但是相比IE6和IE7還是非常優秀的。

以下是我在制作網頁時遇到的一個問題:

目前,隨着IE8的發布,網頁兼容問題有面臨一次挑戰,當我們辛辛苦苦制作出的網頁,在IE6、IE7下顯示正常,但卻在IE8下顯示不正常了,可能你會說,添加一段代碼,可以行的,但卻有時會出現意外,比如當你為子容器添加了float后,你有為父容器添加了一個背景圖片,在IE6、IE7下父容器的背景圖片顯示很正常,但在IE8下,父容器的背景圖片不見了,怎么回事?

大家知道,現在的IE8越來越接近WEB標准了,所以對於不規范的寫法他會不正常的顯示,或變形、或移位、或……。

我們發現在IE8下不能顯示背景圖片的原因是因為子容器使用了float浮動而沒有真正閉合,這也是div無法自適應高度的一個原因。如果父div沒有設float而其子div卻設了float的話,父div無法包住整個子DIV,這種情況一般出現在一個父DIV下包含多個子DIV。

解決辦法:給父DIV也設上float,即可解決父容器下背景圖片顯示問題。

和其他瀏覽器相比,IE系列在HTML標准方面確實表現的糟糕透了,雖然微軟推出了最新版的IE8,並沒有給WEB開發者帶來多大的驚喜,但是為了滿足眾多被因壟斷而使用系統預裝IE的廣大用戶,在設計網頁的時候IE8也是我們不得不重點兼容的對象。希望在今年微軟即將推出的IE9瀏覽器能夠帶我們更多的驚喜。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM