解決ie6 ie7 相容性問題

2021-07-26 20:55:45 字數 1186 閱讀 3378

測試工具 (ietester)

問題描述:在ie6中,如果參照物沒有觸發haslayout ,那麼絕對定位的容器的left和bottom就會有問題。

解決辦法:在相對定位的父容器上加入 zoom:1 來觸發ie的haslayout即可解決。

小技巧:通常我們在設定乙個容器為position:relative的時候 ,都會加上zoom:1來解決很多ie下的問題。

問題描述:在 ie6 下定位元素的父級寬高都為奇數時,那麼在 ie6 下定位元素的 right和bottom都有1畫素的偏差。

解決辦法:設為偶數。

問題描述:ie6下塊元素有浮動和橫向margin的時候,橫向的margin值被放大成兩倍。

解決辦法:給浮動元素加 display:inline。

問題描述:在ie67下,li本身沒浮動,但是li的內容有浮動,li下邊就會產生乙個間隙。

解決辦法:給li設定 float:left或者給li加vertical-align:top。

問題描述:在ie6下高度小於19px的元素,高度會被當做19px來處理。

解決辦法:設定font-size:0;

問題描述:ie6 下父級的overflow:hidden;是包不住子級的相對定位的。

解決辦法:父級也設為相對定位。

問題描述:在ie6下父級有邊框的時候,子元素的margin值消失。

解決辦法:觸發父級的haslayout。

問題描述:子元素的寬度和父級的寬度相差小於3px的時候或兩個浮動元素中間有注釋或者內嵌元素。

解決辦法:用div把注釋或者內嵌元素用div包起來。

問題描述:當浮動元素和絕對定位元素是並列關係的時候,在ie6下絕對定位元素會消失。

解決辦法:給定位元素外麵包個div。

問題描述:在ie6,7下輸入型別的表單控制項上下各有1px的間隙。

解決辦法:給input加浮動。

在ie瀏覽器中,定位元素的z-index層級是相對於各自的父級容器,所以會導致z-index出現錯誤的表現。解決方法是給其父級元素定義z-index,有些情況下還需要定義position:relative。

在ie6中,一些隱藏的元素(如注釋、display:none;的元素)被包含在乙個浮動元素裡,就有可能引發文字重複bug。解決辦法:給浮動元素新增display:inline;。

缺點是在ie瀏覽器下可能會增加額外的http請求數。

ie6, ie7相容性問題以及處理辦法彙總

1 ie6中絕對定位位置錯誤 問題描述 在ie6中,如果參照物沒有觸發haslayout 那麼絕對定位的容器的left和bottom就會有問題。解決辦法 在相對定位的父容器上加入 zoom 1 來觸發ie的haslayout即可解決。小技巧 通常我們在設定乙個容器為position relative...

關於ie6,ie7相容性總結

ie的float bug ie6,ie7 使前端工程師們為之困擾,最常見的現象就是 當浮動元素的父級元素在拖動滾動條的時候出現邊框的缺失,對於此類問題的解決方案就是使浮動元素獲得布局.在諸多的情況中,因為頁面需要寬度自由伸縮而不能申明寬度為固定值,但我們可以設定 height 1 在這裡可謂是舉足輕...

IE相容性問題

通過濾鏡來解決 background rgba 255,255,255,1 火狐,谷歌等 filter progid dximagetransform.microsoft.gradient startcolorstr 19ffffff,endcolorstr 19ffffff 相容ie顏色 19ff...