IE6、IE7、IE8瀏覽器下的CSS、JS兼容性怎么樣?3種對(duì)比分析
原因是如果js腳本同時(shí)創(chuàng)建大量變量,jscript引擎執(zhí)行垃圾收集算法時(shí)會(huì)監(jiān)視腳本中變量分配的數(shù)量、腳本中使用的文字值的數(shù)量和腳本中分配的字符串值的總大?。?如果超過這些值的閾值,就會(huì)發(fā)生垃圾收集,垃圾收集進(jìn)程會(huì)中斷正在運(yùn)行的腳本 。因此,這些運(yùn)行中的腳本將被掛起,直至垃圾收集完成為止 。
IE6 、 IE7 、 IE8 在 CSS 和 JS 方面的區(qū)別 :
1、IE8中的css中關(guān)于width或是height中如果使用像素形式作為參數(shù)時(shí),參數(shù)必須是帶“px”的 , 而且此參數(shù)必須是大于0的,而在IE6和IE7中是支持不帶“px”參數(shù)的,而且參數(shù)是可以為一個(gè)負(fù)數(shù) 。
2、如:style=height:180px0;只有IE8能識(shí)別,style=height:180px9,IE都能識(shí)別 。
2、IE8中的css中“border-style:outset ;”是沒有效果的 。
3、IE8中的無序列表之間的距離要比IE6和IE7大的多 。
【IE6、IE7、IE8瀏覽器下的CSS、JS兼容性怎么樣?3種對(duì)比分析】4、IE6能識(shí)別*,但不能識(shí)別!important,IE7能識(shí)別*也能識(shí)別!important 。
5、IE6支持下劃線,IE7不支持下劃線 。
6、在IE8中,一個(gè)Iframe中取event.x的值不是Iframe中的相對(duì)x坐標(biāo),而是最外層的window的x坐標(biāo),但是event.y卻是取的是 Iframe中的相對(duì)y坐標(biāo) 。而在IE6和IE7中,event.x和event.y卻得的都是所在Iframe中的相對(duì)坐標(biāo),可以用 event.clinetX代替 。
7、IE8中的javascript中的function對(duì)象例如:
function a(){alert(“helloworld”);}
var fun = new function(‘’,’helloworld’);
alert(fun);
此時(shí)返回的值為function anonymous(){function a(){alert(“helloworld”)}}, 而在IE6和IE7中返回的值為function anonymous(){alert("helloworld")},也就是說當(dāng)Function的第二個(gè)參數(shù)如果是一個(gè)函數(shù)時(shí),IE8對(duì)此參數(shù)作用的是整個(gè)函數(shù)的代碼 , 而IE6和IE7則是對(duì)此參數(shù)起作用的是函數(shù)的內(nèi)部代碼(不包括 “function a(){”和“}”的函數(shù)頭和尾) 。
8、在ie6中 , 使用window.status =" 歡迎光臨我的博客!!!",就能在狀態(tài)欄顯示這么一行字,但在IE7中,IE7的安全性設(shè)置中,默認(rèn)是不允許腳本更新狀態(tài)欄的.
9、IE8會(huì)把對(duì) IE6,7,8 用 css 進(jìn)行測試:
測試代碼:樣式代碼: p {color:#f00;} xhtml 代碼:
文字

對(duì)于 IE8 對(duì) js 新增的功能 :
1、 IE8開始支持一些新的W3C規(guī)格,其中多了querySelector和querySelectorAll兩個(gè)函數(shù)
2、 IE8 引入XDomainRequest跨站數(shù)據(jù)獲取功能 。這是一個(gè)非常有趣的進(jìn)行跨站數(shù)據(jù)獲取的功能,不過它與Firefox 3中的跨站 XMLHttpRequest的工作原理不太一樣 。它的跨域并不是無限制的 。需要服務(wù)端返回http header中帶有XDomainRequestAllowed=1才可以跨域,否則是不成功的 。XMLRequest 不能跨站一直都是多子域服務(wù)器的硬傷 。使得很多情況不得不考慮最原始的動(dòng)態(tài)script和JSON的方式 。不過IE8團(tuán)隊(duì)有意解決跨站訪問數(shù)據(jù)的問題,這是IE8的一個(gè)進(jìn)步 。另外,IE8下的XMLHttpRequest增加了一個(gè)很重要的屬性 timeout和ontimeout方法,它在對(duì)程序進(jìn)行優(yōu)化時(shí)極其重要 。
3、 getElementById可以通過id來返回對(duì)象 。getAttribute("checked") 現(xiàn)在返回“checked”而不是true 。動(dòng)態(tài)創(chuàng)建(或修改)的單選按鈕現(xiàn)在可以被選擇了 。
支持更多對(duì)HTML5的功能:
1、 window.location.hash 。這個(gè)功能已經(jīng)被多數(shù)瀏覽器支持的非常好 。在IE8標(biāo)準(zhǔn)模式中將window.location.hash中的更改作為導(dǎo)航 , 并保存先前文檔的URL,可以像在Ajax應(yīng)用中模仿“后退”按鈕效果 。IE8中對(duì)它進(jìn)行了改良,可以廣播這個(gè)hashchanged時(shí)間 。
2、 DOM存儲(chǔ) 。通過這個(gè)功能,數(shù)據(jù)可以持續(xù)保存在本地,它將取代原始的cookie存DOM存儲(chǔ) 。
3、 postMessage 。IE8現(xiàn)在支持跨文件消息通訊(Cross-Document Messaging-XDM)!通過onmessage事件和postMessage方法,兩個(gè)來自不同域的網(wǎng)頁可以進(jìn)行通訊 。目前IE8、Opera 9、Firefox 3和WebKit nightlies版均支持這個(gè)功能 , 也就是說,該功能幾乎已被所有最新瀏覽器支持 。
4、 Offline Events 。在IE 8中擁有一些離線事件來檢測網(wǎng)絡(luò)的中斷,通過它我們可以編寫精彩的離線Ajax應(yīng)用 。目前來看支持這一功能的瀏覽器包括Firefox3和IE8 。
用firefox或者chrome一登陸最小系統(tǒng)就報(bào)480分鐘超時(shí)錯(cuò)誤
IE6 Bugs
1 、不支持用樣式設(shè)置元素
2 、不支持以連字符和下劃線開頭的 class 和 ID 名
3 、元素總是出現(xiàn)在堆疊最上面 , 而無視 z-index 值
4 、如果錨點(diǎn)的偽類沒有使用正確的順序 ( :link , :visited , :hover ),:hover 偽類將無效
5 、一個(gè)屬性的 !important 聲明會(huì)被同一規(guī)則中同一屬性的沒有使用 !important 的第二個(gè)聲明覆蓋 。
6、 height 表現(xiàn)類似于 min-height , width 表現(xiàn)類似于 min-width ,左右 margin 雙倍
7、 圓點(diǎn)邊框 (dotted) 看起來像虛線邊框 (dashed)
8、 text-decoration 的 line-through 值在文字上看起來比別的瀏覽器要高一些
9 、有序列表如果有一個(gè)固定結(jié)構(gòu) (haslayout 為 true , 不能設(shè)置 li 的高度 / 寬度 /zoom 等激活 haslayout 的值 ),序號(hào)就不會(huì)增加 , 而是保持為 1
10、 列表元素不支持 list-style-type 的所有可用的值
11、 如果列表?xiàng)l目浮動(dòng),指定的 list-style-image 將不會(huì)顯示
12、 不完全支持 @font-face
13、 某些選擇器會(huì)錯(cuò)誤的匹配注釋和文檔聲明
14、 如果一個(gè) ID 選擇器結(jié)合一個(gè)類選擇器不匹配,同樣的 ID 選擇器結(jié)合不同的類選擇器也將被當(dāng)作不匹配 。
IE7 bugs
1 、 有序列表如果有一個(gè)固定結(jié)構(gòu) (haslayout 為 true ,不能設(shè)置 li 的高度 / 寬度 /zoom 等激活 haslayout 的值 ) ,序號(hào)就不會(huì)增加,而是保持為 1
2、 列表元素不支持 list-style-type 的所有可用的值
3 、如果列表?xiàng)l目浮動(dòng),指定的 list-style-image 將不會(huì)顯示
4 、不完全支持 @font-face
5 、某些選擇器會(huì)錯(cuò)誤的匹配注釋和文檔聲明
相關(guān)經(jīng)驗(yàn)推薦
- IE瀏覽器如何使用F12開人員工具提取視頻下載地址?提取視頻下載地址方法介紹
- 應(yīng)用before/after偽類時(shí)怎樣讓CSS命名以及針對(duì)ie6/ie7瀏覽器兼容?解決方法分享
- win7系統(tǒng)word要是打不開怎么辦教程|win7系統(tǒng)word打不開怎么辦教程
- win10禁止自動(dòng)更新教程|win10如何禁止自動(dòng)更新
- IE6瀏覽器中window.location.href無效怎么解決?解決無效的方法說明
- 把Windows系統(tǒng)中的IE8瀏覽器降為IE6有哪些方法?降級(jí)方法分享
- 正確刪除IE8瀏覽器并恢復(fù)到IE7的方法有哪些?恢復(fù)方法分享
- IE6瀏覽器中window.location.href無效是什么原因 解決方法分享
- 在IE7瀏覽器的基礎(chǔ)上無法安裝IE6是什么原因 解決方法分享
- ie下js不執(zhí)行有幾種?不執(zhí)行可能說明
