web開發中,在做瀏覽器相容性測試時常常發現ie和ff/chrome的寬度不同,在ie中正常的寬度到了ff或chrome中就變寬撐大了,介面就變得很奇怪。因為介面相對屬於小問題就一直沒有仔細研究,稍微改改看上去差得不多就算了。今天終於查了一下原因,頓悟~
ff是按w3c的標準執行,標準css中所指的width的寬度只包含容器中內容的寬度。而internet explorer中的width則是指整個容器的寬度,包括內容寬度,padding和border。也就是說,firefox中:容器佔的寬度=css中定義的容器寬度+padding寬度+border寬度;而ie中:容器佔的寬度=css中定義的容器寬度(已包含padding和border)。
舉例來說,如果ie中定義 width:120px;padding:5px的話,所顯示的寬度就是[b][color=red]120px[/color][/b],即padding:5px是在width裡面。而firefox中,上面這個定義,顯示寬度就是 [color=red][b]125px[/b][/color]。
由於ff支援 !important而ie會忽略, 因此可用 !important 來解決該問題,即定義css如下:
[color=red]width:115px !important;width:120px;padding:5px;[/color]
[b]注意: !important; 一定要在前面。[/b]
ie和firefox中的不同
今天 3.17 遇到了乙個超鬱悶的問題,我用getelementsbyname時,在ie中怎麼也得不到乙個這個document物件,而firefox中卻可以。非常得納悶。google一下才發現兩個瀏覽器在使用方面有一下不同 w3c規範中getelementsbyname是按著name屬性進行檢索的,...
ul li 在ie 和firefox中的不同
用ul,li製作 是,在firefox ul定義的邊框無法顯示在li上。測試地方 ie是在ie6 7,firefox是版本3.0.6 解決辦法 1.在ul 的最後乙個li寫為 2.在css中寫上.clear 這個是定義了邊框在ie正常,如圖1 在firefox卻出現這樣的情況,如圖2 比較 對ul ...
Firefox和IE中定義自適應高度的div
在css中設定了div的預設高度,在ie中測試時div會隨著內容的自動縮放,而在firefox中內容會顯示在div的外邊。針對上面的問題,通過使用選擇器對css改造如下 1.id屬性選擇器 div1 使用屬性選擇器,ie不支援,專門給firefox制定的,如果高度大於min height,firef...