開發(fā)前端的同學(xué)一定都知道,IE6是兼容BUG多的瀏覽器,它不支持PNG alpha通道暫且不論。其文檔的解析理解規(guī)范也引起了諸多惱人的BUG,有時甚至讓人感到絕望。本文主要講解一些比較容易遇到的IE6BUG,以及解決的辦法。
一、IE6雙倍邊距bug
當(dāng)頁面上的元素使用float浮動時,不管是向左還是向右浮動;只要該元素帶有margin像素都會使該值乘以2,例如“margin-left:10px” 在IE6中,該值就會被解析為20px。想要解決這個BUG就需要在該元素中加入display:inline 或 display:block 明確其元素類型即可解決雙倍邊距的BUG
二、IE6中3像素問題及解決辦法
當(dāng)元素使用float浮動后,元素與相鄰的元素之間會產(chǎn)生3px的間隙。詭異的是如果右側(cè)的容器沒設(shè)置高度時3px的間隙在相鄰容器的內(nèi)部,當(dāng)設(shè)定高度后又跑到容器的相反側(cè)了。要解決這類BUG的話,需要使布局在同一行的元素都加上float浮動。
三、IE6中奇數(shù)寬高的BUG
IE6中奇數(shù)的高寬顯示大小與偶數(shù)高寬顯示大小存在一定的不同。其中要問題是出在奇數(shù)高寬上。要解決此類問題,只需要盡量將外部定位的div高寬寫成偶數(shù)即可。
四、IE6中圖片鏈接的下方有間隙
IE6中圖片的下方會存在一定的間隙,尤其在圖片垂直挨著圖片的時候,即可看到這樣的間隙。要解決此類問題,需要將img標(biāo)簽定義為display:block 或定義vertical-align對應(yīng)的屬性。也可以為img對應(yīng)的樣式寫入font-size:0
五、IE6下空元素的高度BUG
如果一個元素中沒有任何內(nèi)容,當(dāng)在樣式中為這個元素設(shè)置了0-19px之間的高度時。此元素的高度始終為19px。
解決的方法有四種:
1.在元素的css中加入:overflow:hidden
2.在元素中插入html注釋:<!– >
3.在元素中插入html的空白符:
4.在元素的css中加入:font-size:0
六、重復(fù)文字的BUG
在某些比較復(fù)雜的排版中,有時候浮動元素的后一些字符會出現(xiàn)在clear清除元素的下面。
解決方法如下:
1.確保元素都帶有display:inline
2.在后一個元素上使用“margin-right:-3px
3.為浮動元素的后一個條目加上條件注釋,<!–[if !IE]>xxx<![endif]–>
4.在容器的后元素使用一個空白的div,為這個div指定不超過容器的寬度。
七、IE6中 z-index失效
具體BUG為,元素的父級元素設(shè)置的z-index為1,那么其子級元素再設(shè)置z-index時會失效,其層級會繼承父級元素的設(shè)置,造成某些層級調(diào)整上的BUG。詳細(xì)解釋可以閱讀IE6中部分情況下z-index無效的原因,以及解決辦法
結(jié)語:實(shí)際上IE6中,很多BUG的解決方法都可以使用display:inline、font-size:0、float解決。因此我們在書寫代碼時要記住,一旦使用了float浮動,就為元素增加一個display:inline樣式,可以有效的避免浮動造成的樣式錯亂問題。使用空DIV時,為了避免其高度影響布局美觀,也可以為其加上font-size:0 這樣就很容易避免一些兼容上的問題。
廣州天河區(qū)珠江新城富力盈力大廈北塔2706
020-38013166(網(wǎng)站咨詢專線)
400-001-5281 (售后服務(wù)熱線)
深圳市坂田十二橡樹莊園F1-7棟
Site/ http://www.szciya.com
E-mail/ itciya@vip.163.com
品牌服務(wù)專線:400-001-5281
長沙市天心區(qū)芙蓉中路三段398號新時空大廈5樓
聯(lián)系電話/ (+86 0731)88282200
品牌服務(wù)專線/ 400-966-8830
旗下運(yùn)營網(wǎng)站:
Copyright ? 2016 廣州思洋文化傳播有限公司,保留所有權(quán)利。 粵ICP備09033321號