瀏覽器相容性常見

2022-08-28 08:06:11 字數 1616 閱讀 4253

瀏覽器相容性常見

瀏覽器相容問題⼀:不同瀏覽器的標籤預設的外補丁和內補丁不同

問題症狀:隨便寫⼏個標籤,不加樣式控制的情況下,各⾃的margin 和padding差異較⼤。

碰到頻率:100%

解決⽅案:css⾥ *

備註:這個是最常 的也是最易解決的⼀個瀏覽器相容性問題,⼏乎所有的css⽂件開頭都會⽤萬用字元*來設定各個標籤 的內外補丁是0。

瀏覽器相容問題⼆:塊屬性標籤float後,⼜有橫⾏的margin情況下,在ie6顯⽰margin⽐設定的⼤

問題症狀:常 症狀是ie6中後⾯的⼀塊被頂到下⼀⾏

碰到頻率:90%(稍微複雜點的 ⾯都會碰到,float布局最常 的瀏覽器相容問題)

解決⽅案:在float的標籤樣式控制中加⼊ display:inline;將其轉化為⾏內屬性

備註:我們最常⽤的就是div+css布局了,⽽div就是⼀個典型的塊屬性標籤,橫向布局的時候我們通常都是⽤div float實 現的,橫向的間距設定如果⽤margin實現,這就是⼀個必然會碰到的相容性問題。

瀏覽器相容問題三:設定較⼩⾼度標籤(⼀般⼩於10px),在ie6ie7,遨遊中⾼度超出⾃⼰設定⾼度

問題症狀:ie6、7和遨遊⾥這個標籤的⾼度不受控制,超出⾃⼰設定的⾼度

碰到頻率:60%

解決⽅案:給超出⾼度的標籤設定overflow:hidden;或者設定⾏⾼line-height ⼩於你設定的⾼度。

備註:這種情況⼀般出現在我們設定⼩圓⾓背景的標籤⾥。出現這個問題的原因是ie8之前的瀏覽器都會給標籤⼀個最⼩ 預設的⾏⾼的⾼度。即使你的標籤是空的,這個標籤的⾼度還是會達到預設的⾏⾼。

瀏覽器相容問題四:⾏內屬性標籤,設定display:block後採⽤float布局,⼜有橫⾏的margin的情況,ie6間距bug

問題症狀:ie6⾥的間距⽐超過設定的間距

碰到⼏率:20%

解決⽅案:在display:block;後⾯加⼊display:inline;display:table;

備註:⾏內屬性標籤,為了設定寬⾼,我們需要設定display:block;(除了input標籤⽐較特殊)。在⽤float布局並有橫向的 margin後,在ie6下,他就具有了塊屬性float後的橫向margin的bug。不過因為它本⾝就是⾏內屬性標籤,所以我們再加 上display:inline的話,它的⾼寬就不可設了。這時候我們還需要在display:inline後⾯加⼊display:talbe。

瀏覽器相容問題五:⼦元素綁架⽗元素的margin-top

問題症狀:這個問題主要出現在⾮ie瀏覽器中。如果⼦元素和⽗元素之間沒有任何內容,將⼦元素設定margin-top後,⼦ 元素不會動,⽽⽗元素會因為margin-top往下移動。

碰到⼏率:80%

解決⽅案:在⽗元素和⼦元素之間加⼊

。或者設定⽗元素的padding-top。

常見瀏覽器相容性

1 ie5.5及其以前版本的瀏覽器對於盒模型理解上的錯誤 div width 200px padding 5px border 1px solid cccccc 在ie5.5中div 內容的寬度將是200px 5px 1px 5px 1px 188px.在firefox,opera 及ie6等瀏覽器...

常見的瀏覽器相容性

瀏覽器相容問題一 不同瀏覽器的標籤預設的外補丁和內補丁不同 解決方案 css裡 瀏覽器相容問題二 塊屬性標籤float後,又有橫行的margin情況下,在ie6顯示margin比設定的大 解決方案 在float的標籤樣式控制中加入 display inline 將其轉化為行內屬性 瀏覽器相容問題三 ...

常見瀏覽器相容性bug

1 ie6有向左浮動且有向左外邊距或文字向右浮動且有向右外邊距是會出現雙倍外邊距的bug 在 ie5.0 ie5.5 ie6 中,當為乙個塊級元素同時設定了向左浮動 float left 及左邊距或右邊距 margin left margin right 後,則該元素的左邊距或右邊距在某些情況下會是...