如何機智地回答瀏覽器兼容性問題

一琅轧,從根源上講

????????各個瀏覽器之所以存在兼容性的問題,究其原因是不同瀏覽器的內(nèi)核也不盡相同,所以各個瀏覽器對網(wǎng)頁的解析存在一定的差異胡桃。內(nèi)核是瀏覽器底層架構最核心和基礎的部分,按照功能可分為:渲染引擎和JS引擎谤饭。渲染引擎(Rendering Engine)也稱為布局引擎(Layout Engine)标捺、排版引擎,負責對網(wǎng)頁語法的解釋和渲染顯示到瀏覽器揉抵。一個渲染引擎通常包括HTML解釋器亡容、CSS解釋器、布局layout冤今、網(wǎng)絡等模塊:


????????通常講的瀏覽器內(nèi)核就是指代的瀏覽器的渲染引擎闺兢。不同的瀏覽器使用不同的渲染內(nèi)核,對HTML/JS/CSS的標準語法的解釋也存在差異戏罢,導致在顯示效果屋谭、語法支持度和渲染效率上也存在差別,所以也就導致了網(wǎng)頁程序在不同內(nèi)核的瀏覽器下的表現(xiàn)和渲染差異龟糕,乃至bug都不統(tǒng)一桐磁。

二,常見的HTML和CSS中的兼容性問題

1.雙邊距BUG float引起的? 使用display

浮動元素的雙倍Margin的Bug是IE6以及其以下版本的一個經(jīng)典Bug了讲岁,觸發(fā)這個Bug的產(chǎn)生是給元素設置了float并且同時和float同一方向設置了margin值我擂,此時在IE6(IE6以下版本我們飄過不理了)就會產(chǎn)一個雙倍margin值的Bug。

修復這個Bug的方法很簡單缓艳,只需要改變浮動元素的顯示風格校摩,也就是說在浮動元素中增加一個“display:inline”屬性,這樣就可以輕松的解決“浮動元素的雙倍Margin”的Bug阶淘。

2.hover失效

????????超鏈接訪問過后hover樣式就不出現(xiàn)了 被點擊訪問過的超鏈接樣式不在具有hover和active了解決方法是改變CSS屬性的排列順序:

? L-V-H-A :? a:link {} a:visited {} a:hover {} a:active {}

3.圖片間隙

????????div中的圖片間隙(該bug出現(xiàn)在IE6及更低版本中)

????????描述:在div中插入圖片時衙吩,圖片會將div下方撐大三像素。

????????hack1:將<div>與<img>寫在一行上溪窒;

????????hack2:將<img>轉(zhuǎn)為塊狀元素坤塞,給<img>添加聲明:display:block;

4.透明屬性

IE瀏覽器寫法:filter:alpha(opacity=value);取值范圍1--100

兼容其他瀏覽器寫法:opacity:.value;(value的取值范圍0-9)

5:min-height在IE6下不兼容

解決方案:

1)min-height:value冯勉;

? ? ? _height:value;

2)min-height:value尺锚;

? ? ?height:auto珠闰!important;

? ? ?height:value瘫辩;

6:按鈕默認大小不一

解決方案:

1)用a標簽來模擬按鈕伏嗜,添加樣式;

2)如果按鈕是一張背景圖片伐厌,那么直接給按鈕添加背景圖承绸;

7:上下margin的重疊問題

描述:給上邊元素設置了margin-bottom,給下邊元素設置了margin-top挣轨,瀏覽器只會識別較大值军熏;

解決方案:margin-top和margin-bottom中選擇一個,只設置其中一個值卷扮;

8:hack

Hack是指一種兼容CSS在不同瀏覽器中正確顯示的技巧方法荡澎,因為它們都屬于個人對CSS代碼的非官方的修改,或非官方的補丁晤锹。有些人更喜歡使用patch(補丁)來描述這種行為摩幔。

在屬性前可加以上這三個符號

_ 只有IE6以下及IE6支持,例如_height:100px;

* 只有IE7以下及IE7支持,例如*height:100px;

*+只有IE7以下及IE7支持,例如*+height:100px;

針對IE8以及以上加屬性值后綴\0(數(shù)字零),例如:height:200px\0;

9:Filter

表示過濾器的意思,它是一種對特定的瀏覽器或瀏覽器組顯示或隱藏規(guī)則或聲明的方法鞭铆。本質(zhì)上講或衡,F(xiàn)ilter是一種用來過濾不同瀏覽器的Hack類型疗琉。

三 常見的JavaScript的兼容性問題


1.標準的事件綁定方法函數(shù)為addEventListener薄嫡,但IE下是attachEvent;

2.事件的捕獲方式不一致爹脾,標準瀏覽器是由外至內(nèi)舶担,而IE是由內(nèi)到外坡疼,但是最后的結果是將IE的標準定為標準

3.window.event獲取的。并且獲取目標元素的方法也不同衣陶,標準瀏覽器是event.target回梧,而IE下是event.srcElement

4.ajax的實現(xiàn)方式不同,這個我所理解的是獲取XMLHttpRequest的不同祖搓,IE下是activeXObject

5.獲得DOM節(jié)點的父節(jié)點、子節(jié)點的方式不同

其他瀏覽器:parentNode??parentNode.childNodes???????

IE:parentElement?parentElement.children

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末湖苞,一起剝皮案震驚了整個濱河市拯欧,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌财骨,老刑警劉巖镐作,帶你破解...
    沈念sama閱讀 210,978評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件藏姐,死亡現(xiàn)場離奇詭異,居然都是意外死亡该贾,警方通過查閱死者的電腦和手機羔杨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評論 2 384
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來杨蛋,“玉大人兜材,你說我怎么就攤上這事〕蚜Γ” “怎么了曙寡?”我有些...
    開封第一講書人閱讀 156,623評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長寇荧。 經(jīng)常有香客問我举庶,道長,這世上最難降的妖魔是什么揩抡? 我笑而不...
    開封第一講書人閱讀 56,324評論 1 282
  • 正文 為了忘掉前任户侥,我火速辦了婚禮,結果婚禮上峦嗤,老公的妹妹穿的比我還像新娘蕊唐。我一直安慰自己,他們只是感情好寻仗,可當我...
    茶點故事閱讀 65,390評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著署尤,像睡著了一般耙替。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上曹体,一...
    開封第一講書人閱讀 49,741評論 1 289
  • 那天铜幽,我揣著相機與錄音除抛,去河邊找鬼。 笑死,一個胖子當著我的面吹牛护蝶,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播堤魁,決...
    沈念sama閱讀 38,892評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼吧慢!你這毒婦竟也來了匈仗?” 一聲冷哼從身側響起悠轩,我...
    開封第一講書人閱讀 37,655評論 0 266
  • 序言:老撾萬榮一對情侶失蹤火架,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后骡男,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,104評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡访得,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年俱笛,在試婚紗的時候發(fā)現(xiàn)自己被綠了浆兰。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片榕订。...
    茶點故事閱讀 38,569評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡劫恒,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情贰您,我是刑警寧澤拢操,帶...
    沈念sama閱讀 34,254評論 4 328
  • 正文 年R本政府宣布,位于F島的核電站展父,受9級特大地震影響篮绿,放射性物質(zhì)發(fā)生泄漏吕漂。R本人自食惡果不足惜犬钢,卻給世界環(huán)境...
    茶點故事閱讀 39,834評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望油湖。 院中可真熱鬧乏德,春花似錦、人聲如沸贷痪。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間俩块,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留狸眼,地道東北人。 一個月前我還...
    沈念sama閱讀 46,260評論 2 360
  • 正文 我出身青樓屡限,卻偏偏與公主長得像炕倘,于是被迫代替她去往敵國和親罩旋。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,446評論 2 348

推薦閱讀更多精彩內(nèi)容