DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> WEB網站前端 >> 前端技巧 >> CSS中IE浏覽器最基本的一些bug
CSS中IE浏覽器最基本的一些bug
編輯:前端技巧     

一、IE6雙倍邊距bug

當頁面上的元素使用float浮動時,不管是向左還是向右浮動;只要該元素帶有margin像素都會使該值乘以2,例如“margin-left:10px” 在IE6中,該值就會被解析為20px。想要解決這個BUG就需要在該元素中加入display:inline 或 display:block 明確其元素類型即可解決雙倍邊距的BUG。

二、IE6中3像素問題及解決辦法

當元素使用float浮動後,元素與相鄰的元素之間會產生3px的間隙。詭異的是如果右側的容器沒設置高度時3px的間隙在相鄰容器的內部,當設定高度後又跑到容器的相反側了。要解決這類BUG的話,需要使布局在同一行的元素都加上float浮動。

三、IE6中奇數寬高的BUG

IE6中奇數的高寬顯示大小與偶數高寬顯示大小存在一定的不同。其中要問題是出在奇數高寬上。要解決此類問題,只需要盡量將外部定位的div高寬寫成偶數即可。

四、IE6中圖片鏈接的下方有間隙

IE6中圖片的下方會存在一定的間隙,尤其在圖片垂直挨著圖片的時候,即可看到這樣的間隙。要解決此類問題,需要將img標簽定義為display:block 或定義vertical-align對應的屬性。也可以為img對應的樣式寫入font-size:0

五、IE6下空元素的高度BUG

如果一個元素中沒有任何內容,當在樣式中為這個元素設置了0-19px之間的高度時。此元素的高度始終為19px。

解決的方法有四種:

1.在元素的css中加入:overflow:hidden

2.在元素中插入html注釋:<!– >

3.在元素中插入html的空白符:&nbsp;

4.在元素的css中加入:font-size:0

六、重復文字的BUG

在某些比較復雜的排版中,有時候浮動元素的最後一些字符會出現在clear清除元素的下面。

解決方法如下:

1.確保元素都帶有display:inline

2.在最後一個元素上使用“margin-right:-3px

3.為浮動元素的最後一個條目加上條件注釋,<!–[if !IE]>xxx

4.在容器的最後元素使用一個空白的div,為這個div指定不超過容器的寬度。

七、IE6中 z-index失效

具體BUG為,元素的父級元素設置的z-index為1,那麼其子級元素再設置z-index時會失效,其層級會繼承父級元素的設置,造成某些層級調整上的BUG。

結語:實際上IE6中,很多BUG的解決方法都可以使用display:inline、font-size:0、float解決。因此我們在書寫代碼時要記住,一旦使用了float浮動,就為元素增加一個display:inline樣式,可以有效的避免浮動造成的樣式錯亂問題。使用空DIV時,為了避免其高度影響布局美觀,也可以為其加上font-size:0 這樣就很容易避免一些兼容上的問題。

本文來源:暖笑無殇的博客(http://www.w3cfuns.com/blog-5470334-5406836.html)

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved