瀏覽器的相容性問題

2022-05-14 20:52:12 字數 2059 閱讀 9207

一:css相容性問題

1:通常我們寫**在css開始的時候就會寫

*其主要原因就是不同瀏覽器對標籤不加樣式控制的情況下,各自的margin 和padding差異較大,這就會造成差異;

解決方案:css 裡面加上上述** (萬用字元*來設定各個標籤的內外補丁是0)。

2:塊元素 設定float後,有margin情況下,本來在一行的東西,最後乙個元素被擠到下一行;

主要原因:布局用div+css布局的話,div設定float,橫向距離用margin設定的話,ie6顯示margin比設定的大,所以就會被擠到下一行;

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

主要原因:mg標籤放在一起的時候,有些瀏覽器會有預設的間距,萬用字元也不起作用。

解決方案:給img加上float屬性;你建議用margin設定為負數解決為題,因為margin本身也有相容性問題

4:行元素 設定display:block;又設定float屬性,會出現上述問題2的問題;

解決方案:在display:block;後面加入display:inline;display:table;

5:透明度的問題

一句話搞定背景透明:

.op_class

通常我們會看到有這樣的寫法: !important;!important這個屬性ie不能識別,但別的瀏覽器可以識別

例如火狐(ff) 設定 padding 後, div 會增加 height 和 width, 但 ie 不會, 故需要用 !important 多設乙個 height 和 width ;

注意寫的先後順序不能顛倒;

寫法:div 

二:js常見的相容性問題;

1:event = event || window.event;

問題原因:window.event只能在ie下使用,不能在火狐下使用,火狐使用event

例如:在瀏覽器上獲取滑鼠的位置:

獲得滑鼠點選橫座標

上述這樣寫只能在ie下獲取到滑鼠的位置,想要在所有瀏覽器中獲取到位置需改成:

獲得outerhtml

2:獲取html物件的問題:

firefox獲取方式document.getelementbyid("idname")

ie使用document.idname或者document.getelementbyid("idname")

解決辦法:統一使用document.getelementbyid("idname");

3:innertext的問題

innertext在ie中能正常工作,但是innertext在firefox中卻不行,需用textcontent;

解決辦法:做個瀏覽器識別寫個相容性寫法

if"explorer") > -1)else

4:ajax獲取xmlhttp的區別

注意:在ie中,xmlhttp.send(content)方法的content可以為空,而firefox則不能為null,應該用send(""),否則會出現411錯誤。

關於相容性問題是沒完沒了的,還是要有bug的處理能力才行,因為你永遠不會知道你會碰到什麼問題;

瀏覽器相容性問題

苦惱的區別 1.image repeat 在火狐裡比較正常,可是在ie中一直repeat.背景是乙個關閉的x號,div設定的backgourn image url xx 結果在ie中卻不行,最後找到原因是ie中要顯式的寫上image repeat norepeat這屬性,還有好多的差異,明天 去了 ...

瀏覽器相容性問題

瀏覽器相容問題一 不同瀏覽器的標籤預設的外補丁和內補丁不同 問題症狀 隨便寫幾個標籤,不加樣式控制的情況下,各自的margin 和padding差異較大。碰到頻率 100 解決方案 css裡 備註 這個是最常見的也是最易解決的乙個瀏覽器相容性問題,幾乎所有的css檔案開頭都會用萬用字元 來設定各個標...

瀏覽器相容性問題

解決方案 應該用ie8相容模式瀏覽網頁,而不應該用ie9或ie10渲染模式.很多使用者安裝ie10後發生很多網頁顯示錯亂,就是相容性的原因,因為ie10預設的渲染模式是ie10.此時應該將其改為ie7渲染模式。為什麼用ie6 7渲染模式的原因如下 中國所有網頁肯定都支援ie,支援ie就是支援ie核心...