js,css 常用瀏覽器相容問題處理方法

2021-10-06 20:32:59 字數 1903 閱讀 1296

css部分

1.ie6雙邊距bug:塊級標籤新增了浮動float之後,若在浮動方向上也有margin值,則margin值會加倍,就會把某些元素擠到了第二行。給float元素新增display:inline 即可正常顯示。

解決方法:

img||img||img
3.行內屬性標籤,設定display:block後採用float布局,又有橫行的margin的情況,ie6間距bug(類似第二種):

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

5.超連結訪問過後 樣式就混亂了,hover樣式不出現了。其實主要是其css屬性的排序問題。

解決方案:最好按照這個順序:l-v-h-a

a:link{} a:visited{} a:hover{} a:active{}

6.chrome下缺省會將小於12px的文字強制按照12px來解析。

解決辦法是給其新增屬性:-webkit-text-size-adjust: none;

js部分:

//1.滾動條到頂端的距離(滾動高度)

var scrolltop = document.documentelement.scrolltop || document.body.scrolltop;

.滾動條到左端的距離

var scrollleft = document.documentelement.scrollleft || document.body.scrollleft;

/2. ie9以下byclassname

function byclassname(obj,classname)else

}return arr; //返回

}}

//3. 獲取非行內樣式相容    ie:currentstyle  標準:getcomputedstyle

function getstyle(obj,attr)

= '';設定樣式

//obj['屬性']: 物件是變數時,必須用物件['屬性']獲取。

//4. 獲取事件物件的相容

evt = evt || window.event

//5. 獲取滑鼠編碼值的相容

function getbutton(evt)else if(window.event)

}}

//6. 獲取鍵盤按鍵編碼值的相容

var key = evt.keycode || evt.charcode || evt.which;

//7. 阻止事件冒泡的相容

e.stoppropagation ? e.stoppropagation() : e.cancelbubble = true;

//8. 阻止超連結的預設行為的相容

evt.preventdefault ? evt.preventdefault() : evt.returnvalue = false;

//9. 

新增事件***的相容

function addeventlistener(obj,event,fn,boo)else if(obj.attachevent)

} 移除事件***的相容

function removeeventlistener(obj,event,fn,boo)else if(obj.detachevent)

}

//10. 獲取事件源的相容

var target = event.target || event.srcelement;

瀏覽器相容問題

我經常看到一些人提問說網頁錯位,和在火狐裡面看上去網頁是好的,在ie在錯位了.在web 下html css裡全看一些關於這些問題.還有有ul li什麼調整不好的.等等 全可以用css hack 解決的.解決方法 用positon relative 然後 top 0px left 0px 上面的top...

瀏覽器相容問題

給近兩天的工作乙個總結,給這週劃上句號。工作中遇到了在google顯示的很好的介面,在ie顯示的不是很好,但還能看,僅僅是顏色和和位置錯位,在360瀏覽器下看就是真的錯誤太大了,不顯示,樣式也亂了,於是走上解決瀏覽器相容之路。思路1 對應每個瀏覽器寫個css,判斷之,工作量太大,放棄。思路2 針對每...

瀏覽器相容問題

所謂的瀏覽器相容性問題,是指因為不同的瀏覽器對同 段 有不同的解析,造成 顯 效果不統 的情況。在 多 數情況下,我們的需求是,論 戶 什麼瀏覽器來檢視我們的 站或者登陸我們的系統,都應該是統 的顯 效果。所 以瀏覽器的相容性問題是前端開發 員經常會碰到和必須要解決的問題。在學習瀏覽器相容性之前,我...