傳智播客旗下品牌:|||||

全國咨詢/投訴熱線:400-618-4000

web前端兼容性面試題匯總

更新時間:2020年08月31日11時37分 來源:傳智播客 瀏覽次數:

一、html部分

1.H5新標簽在IE9以下的瀏覽器識別 <!--[if lt IE 9]>

 <script type="text/javascript" src="js/html5shiv.js"></script>

<![endif]-->

 html5shiv.js下載地址

2.ul標簽內外邊距問題ul標簽在IE6\IE7中,有個默認的外邊距,但是在IE8以上及其他瀏覽器中有個默認的內邊距。

解決方法:統一設置ul的內外邊距為0

1598843644640_web前端面試.jpg

二、CSS樣式的兼容性      

1.css的hack問題:主要針對IE的不同版本,不同的瀏覽器的寫法不同       

 IE的條件注釋hack:       

 <!--[if IE 6]>此處內容只有IE6.0可見<![endif]-->          

 <!--[if IE 7]>此處內容只有IE7.0可見<![endif]-->

2.IE6雙邊距問題:IE6在浮動后,又有橫向的margin,此時,該元素的外邊距是其值的2倍       

 解決辦法:display:block;

3.IE6下圖片的下方有空隙      

 解決方法:給img設置display:block;

4.IE6下兩個float之間會有個3px的bug     

 解決辦法:給右邊的元素也設置float:left;

5.IE6下沒有min-width的概念,其默認的width就是min-width

6.IE6下在使用margin:0 auto;無法使其居中       

 解決辦法:為其父容器設置text-align:center;

7.被點擊過后的超鏈接不再具有hover和active屬性       

 解決辦法:按lvha的順序書寫css樣式,

 ":link": a標簽還未被訪問的狀態;

 ":visited": a標簽已被訪問過的狀態;

 ":hover": 鼠標懸停在a標簽上的狀態;

 ":active": a標簽被鼠標按著時的狀態;

8.在使用絕對定位或者相對定位后,IE中設置z-index失效,原因是因為其元素依賴于父元素的z-index,但是父元素默認為0, 子高父低,所以不會改變顯示的順序。

9.IE6下無法設置1px的行高,原因是由其默認行高引起的       

 解決辦法:為期設置overflow:hidden;或者line-height:1px;

三、JavaScript的兼容性

1、標準的事件綁定方法函數為addEventListener,但IE下是attachEvent;

2.事件的捕獲方式不一致,標準瀏覽器是由外至內,而IE是由內到外,但是最后的結果是將IE的標準定為標準

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

4.在低版本的IE中獲取的日期處理函數的值不是與1900的差值,但是在高版本的IE中和標準瀏覽器保持了一致,獲取的值也是與1900的差值。     
    

 比如:var year= new Date().getYear();

5.ajax的實現方式不同,這個我所理解的是獲取XMLHttpRequest的不同,IE下是activeXObject

6.IE中不能操作tr的innerHtml7.獲得DOM節點的父節點、子節點的方式不同

其他瀏覽器:parentNode  parentNode.childNodes       

IE:parentElement parentElement.childre


猜你喜歡:

最全的web前端面試題含答案

常見的web前端面試試題(含答案)

web前端高頻面試試題含答案_2019最新升級版【超全】

2018最新web前端面試題附答案

70道web前端開發面試題

web前端面試試題(html)