前端瀏覽器兼容性問題

一、前言

  • 在前端開發(fā)的過程中我們不可避免的會遇到瀏覽器兼容性問題族奢,這也是我們必須要解決的問題姥闭。首先來了解一下為什么存在瀏覽器兼容性問題。
    現(xiàn)在的市場上有很多種類的瀏覽器越走,不同種類的瀏覽器的內核也不盡相同棚品,所以不同瀏覽器對代碼的解析會存在差異,這就導致對頁面渲染效果不統(tǒng)一的問題廊敌。

  • 市場上常見的瀏覽器內核主要有四種:Webkit內核铜跑、Presto內核、Trident內核骡澈、Gecko內核锅纺。

    image.png

(emmm自己做的表格,不知道為啥有點歪...)

二肋殴、常見的瀏覽器兼容性問題以及解決辦法

  • 常見的瀏覽器兼容性可分為三類:
    ①HTML兼容
    ②CSS兼容
    ③JavaScript兼容
    對于HTML兼容囤锉,這是由于低版本瀏覽器不能識別一些高版本瀏覽器使用的標簽,從而導致不能解析护锤,比如HTML5新增的標簽官地。這類兼容性問題比較容易處理。

1. CSS兼容
問題一:不同瀏覽器的標簽默認的外補丁(margin)和內補丁(padding)不同
問題表現(xiàn):標簽在不加樣式的情況下外補丁(margin)和內補丁(padding)存在差異
解決方法:在css里添加如下代碼

*{
  margin: 0;
  padding: 0;
}

問題二:IE6下margin值雙倍邊距問題
問題表現(xiàn):IE6下元素浮動之后margin值變成雙倍
解決方法:將元素轉為行內屬性

{
  display: inline;
}

問題三:height值設置過小問題
問題表現(xiàn):IE6烙懦、IE7下設置標簽高度小于10px驱入,存在超出已設置的高度的問題
解決方法:為超出高度的元素添加溢出部分隱藏

{
  overflow: hidden;
}

問題四:標簽min-height屬性不兼容問題
問題表現(xiàn):min-height屬性本身就是一個不兼容CSS屬性,所以min-height不能很好地被各個瀏覽器兼容
解決方法:例如要為一個標簽設置最小高度為200px

{
  min-height: 200px;
  height: auto!important;
  height: 200px;
  overflow: visible;
}

問題五:圖片元素img下默認有間距
問題表現(xiàn):IE6下圖片元素img出現(xiàn)多余空白
解決方法:圖片使用float屬性

問題六:opacity多瀏覽器透明度兼容問題
問題表現(xiàn):opacity是css3里的屬性氯析,只有部分瀏覽器支持
解決方法:使用各個瀏覽器的私有屬性以支持opacity

{
  filter: alpha(opacity=50);/*IE*/
  -moz-opacity: 0.5;/*老版Mozilla*/
  -khtml-opacity: 0.5;/*老版Safari*/ 
  opacity: 0.5;
}

問題七:Firefox和Chrome不兼容cursor:hand
解決方法:cursor:poniter兼容所有瀏覽器

問題八:IE6的3px Bug
問題表現(xiàn):一個標簽浮動亏较,另一個不浮動的元素自然上浮與之靠近出現(xiàn)3px間距
解決方法:對浮動的標簽設置_margin-right: -3px;

{
  _margin-right: -3px;
}

對于其他的一些 CSS兼容性問題,在以后遇到時會繼續(xù)補充掩缓。

三宴杀、Tip

對于JavaScript兼容性問題,會再單獨寫一篇總結拾因,否則篇幅太長不好閱讀旺罢。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末旷余,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子扁达,更是在濱河造成了極大的恐慌正卧,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件跪解,死亡現(xiàn)場離奇詭異炉旷,居然都是意外死亡,警方通過查閱死者的電腦和手機叉讥,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進店門窘行,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人图仓,你說我怎么就攤上這事罐盔。” “怎么了救崔?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵惶看,是天一觀的道長。 經常有香客問我六孵,道長纬黎,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任劫窒,我火速辦了婚禮本今,結果婚禮上,老公的妹妹穿的比我還像新娘主巍。我一直安慰自己冠息,他們只是感情好,可當我...
    茶點故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布煤禽。 她就那樣靜靜地躺著,像睡著了一般岖赋。 火紅的嫁衣襯著肌膚如雪檬果。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天唐断,我揣著相機與錄音选脊,去河邊找鬼。 笑死脸甘,一個胖子當著我的面吹牛恳啥,可吹牛的內容都是我干的。 我是一名探鬼主播丹诀,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼钝的,長吁一口氣:“原來是場噩夢啊……” “哼翁垂!你這毒婦竟也來了?” 一聲冷哼從身側響起硝桩,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤沿猜,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后碗脊,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體啼肩,經...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年衙伶,在試婚紗的時候發(fā)現(xiàn)自己被綠了祈坠。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡矢劲,死狀恐怖赦拘,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情卧须,我是刑警寧澤另绩,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站花嘶,受9級特大地震影響笋籽,放射性物質發(fā)生泄漏。R本人自食惡果不足惜椭员,卻給世界環(huán)境...
    茶點故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一车海、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧隘击,春花似錦侍芝、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至凶赁,卻和暖如春咧栗,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背虱肄。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工致板, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人咏窿。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓斟或,卻偏偏與公主長得像,于是被迫代替她去往敵國和親集嵌。 傳聞我的和親對象是個殘疾皇子萝挤,可洞房花燭夜當晚...
    茶點故事閱讀 44,700評論 2 354

推薦閱讀更多精彩內容

  • 市場上瀏覽器種類很多御毅,不同瀏覽器的內核也不盡相同,所以各個瀏覽器對網頁的解析存在一定的差異平斩。瀏覽器內核主要分為兩種...
    火燒冰山閱讀 48,037評論 6 38
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5亚享? 答:HTML5是最新的HTML標準。 注意:講述HT...
    kismetajun閱讀 27,477評論 1 45
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案绘面? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽默認的外補...
    _Yfling閱讀 13,751評論 1 92
  • 序章 談談“瀏覽器兼容性”的問題?很多前端的面試或筆試中瘦馍,都有比較籠統(tǒng)的“說說你所知道的各瀏覽器存在的兼容問題”歼秽,...
    麻辣小隔壁閱讀 3,042評論 1 57
  • (方法是:每寫一小段代碼(布局中的一行或者一塊)我們都要在不同的瀏覽器中看是否兼容,當然熟練到一定的程度就沒這么麻...
    Air丹閱讀 1,775評論 0 6