瀏覽器兼容性問題-常見問題總結匯總

image.png

瀏覽器兼容性問題解決方案 · 總結

一缰雇、IE 屬性過濾器(較為常用的hack方法)

針對不同的 IE 瀏覽器弃秆,可以使用不同的字符來對特定的版本的 IE 瀏覽器進行樣式控制

image.png
image.png

二嫉拐、瀏覽器 CSS 兼容前綴


-o-transform:rotate(7deg); // Opera

-ms-transform:rotate(7deg); // IE

-moz-transform:rotate(7deg); // Firefox

-webkit-transform:rotate(7deg); // Chrome

transform:rotate(7deg); // 統(tǒng)一標識語句

三咐低、a 標簽的幾種 CSS 狀態(tài)的順序

很多新人在寫 a 標簽的樣式其骄,會疑惑為什么寫的樣式沒有效果辐烂,或者點擊超鏈接后虎囚,hover调煎、active 樣式沒有效果横缔,其實只是寫的樣式被覆蓋了铺遂。
正確的a標簽順序應該是:

  • link:平常的狀態(tài)
  • visited:被訪問過之后
  • hover:鼠標放到鏈接上的時候
  • active:鏈接被按下的時候

四、IE6 雙倍邊距的問題

設置 ie6 中設置浮動茎刚,同時又設置 margin襟锐,會出現(xiàn)雙倍邊距的問題
display: inline;

五、解決 IE9 以下瀏覽器不能使用 opacity

opacity: 0.5;
filter: alpha(opacity = 50);
filter: progid:DXImageTransform.Microsoft.Alpha(style = 0, opacity = 50);

六膛锭、解決 IE6 不支持 fixed 絕對定位以及IE6下被絕對定位的元素在滾動的時候會閃動的問題

/* IE6 hack */
*html, *html body {
  background-image: url(about:blank);
  background-attachment: fixed;
}
*html #menu {
  position: absolute;
  top: expression(((e=document.documentElement.scrollTop) ? e : document.body.scrollTop) + 100 + 'px');
}

七粮坞、IE6 背景閃爍的問題

問題:鏈接、按鈕用 CSSsprites 作為背景泉沾,在 ie6 下會有背景圖閃爍的現(xiàn)象捞蚂。原因是 IE6 沒有將背景圖緩存,每次觸發(fā) hover 的時候都會重新加載
解決:可以用 JavaScript 設置 ie6 緩存這些圖片:
document.execCommand("BackgroundImageCache", false, true);

八跷究、解決 IE6 不支持 min-height 屬性的問題

min-height: 350px;
_height: 350px;

八姓迅、鍵盤事件 keyCode 兼容性寫法

var inp = document.getElementById('inp')
var result = document.getElementById('result')

function getKeyCode(e) {
  e = e ? e : (window.event ? window.event : "")
  return e.keyCode ? e.keyCode : e.which
}

inp.onkeypress = function(e) {
  result.innerHTML = getKeyCode(e)
}

九、DOM 事件處理程序的兼容寫法(能力檢測)

var eventshiv = {
    // event兼容
    getEvent: function(event) {
        return event ? event : window.event;
    },

    // type兼容
    getType: function(event) {
        return event.type;
    },

    // target兼容
    getTarget: function(event) {
        return event.target ? event.target : event.srcelem;
    },

    // 添加事件句柄
    addHandler: function(elem, type, listener) {
        if (elem.addEventListener) {
            elem.addEventListener(type, listener, false);
        } else if (elem.attachEvent) {
            elem.attachEvent('on' + type, listener);
        } else {
            // 在這里由于.與'on'字符串不能鏈接,只能用 []
            elem['on' + type] = listener;
        }
    },

    // 移除事件句柄
    removeHandler: function(elem, type, listener) {
        if (elem.removeEventListener) {
            elem.removeEventListener(type, listener, false);
        } else if (elem.detachEvent) {
            elem.detachEvent('on' + type, listener);
        } else {
            elem['on' + type] = null;
        }
    },

    // 添加事件代理
    addAgent: function (elem, type, agent, listener) {
        elem.addEventListener(type, function (e) {
            if (e.target.matches(agent)) {
                listener.call(e.target, e); // this 指向 e.target
            }
        });
    },

    // 取消默認行為
    preventDefault: function(event) {
        if (event.preventDefault) {
            event.preventDefault();
        } else {
            event.returnValue = false;
        }
    },

    // 阻止事件冒泡
    stopPropagation: function(event) {
        if (event.stopPropagation) {
            event.stopPropagation();
        } else {
            event.cancelBubble = true;
        }
    }
};

原文鏈接:https://juejin.im/post/59a3f2fe6fb9a0249471cbb4丁存,里面介紹了比較全的兼容性問題肩杈,本人只是拿出了一些開發(fā)中常用的問題!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末解寝,一起剝皮案震驚了整個濱河市扩然,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌聋伦,老刑警劉巖夫偶,帶你破解...
    沈念sama閱讀 221,635評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異觉增,居然都是意外死亡兵拢,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評論 3 399
  • 文/潘曉璐 我一進店門逾礁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來说铃,“玉大人,你說我怎么就攤上這事嘹履∧迳龋” “怎么了?”我有些...
    開封第一講書人閱讀 168,083評論 0 360
  • 文/不壞的土叔 我叫張陵砾嫉,是天一觀的道長幼苛。 經常有香客問我,道長焰枢,這世上最難降的妖魔是什么蚓峦? 我笑而不...
    開封第一講書人閱讀 59,640評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮济锄,結果婚禮上暑椰,老公的妹妹穿的比我還像新娘。我一直安慰自己荐绝,他們只是感情好一汽,可當我...
    茶點故事閱讀 68,640評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著低滩,像睡著了一般召夹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上恕沫,一...
    開封第一講書人閱讀 52,262評論 1 308
  • 那天监憎,我揣著相機與錄音,去河邊找鬼婶溯。 笑死鲸阔,一個胖子當著我的面吹牛偷霉,可吹牛的內容都是我干的。 我是一名探鬼主播褐筛,決...
    沈念sama閱讀 40,833評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼类少,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了渔扎?” 一聲冷哼從身側響起硫狞,我...
    開封第一講書人閱讀 39,736評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎晃痴,沒想到半個月后残吩,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 46,280評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡愧旦,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,369評論 3 340
  • 正文 我和宋清朗相戀三年世剖,在試婚紗的時候發(fā)現(xiàn)自己被綠了定罢。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片笤虫。...
    茶點故事閱讀 40,503評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖祖凫,靈堂內的尸體忽然破棺而出琼蚯,到底是詐尸還是另有隱情,我是刑警寧澤惠况,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布遭庶,位于F島的核電站,受9級特大地震影響稠屠,放射性物質發(fā)生泄漏峦睡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,870評論 3 333
  • 文/蒙蒙 一权埠、第九天 我趴在偏房一處隱蔽的房頂上張望榨了。 院中可真熱鬧,春花似錦攘蔽、人聲如沸龙屉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽转捕。三九已至,卻和暖如春唆垃,著一層夾襖步出監(jiān)牢的瞬間五芝,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評論 1 272
  • 我被黑心中介騙來泰國打工辕万, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留枢步,地道東北人谤辜。 一個月前我還...
    沈念sama閱讀 48,909評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像价捧,于是被迫代替她去往敵國和親丑念。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,512評論 2 359

推薦閱讀更多精彩內容