經常遇到莫名其妙讓IE6崩潰的事情。今天看到了一篇好文章,網頁教學網整理整理發上來,以後開發的時候要注意了。
鑒於國內IE6的市場份額還在主流的情況,一定要避免出現以下情況。
IE6真脆弱啊
1.設置scrollbar-base-color,CSS裡給table做了定位,再通過JS改變其定位IE6就崩潰了。
關鍵代碼:
<styletype="text/CSS">
Html,body{
scrollbar-base-color:#330066;
}
.crash{
position:absolute;
left:200px;
top:200px;
width:200px;
}
</style>
<scripttype="text/Javascript">
functiongalgenfrist(){
window.setTimeout('crashIE();',1000);
}
functioncrashIE(){
varmoveNode=document.getElementById("move");
if(moveNode){
moveNode.style.top="100px";
moveNode.style.left="200px";
}
}
</script>
<bodyonload="galgenfrist();">
<divid="move"class="crash">
<table>
<tbody>
<tr>
<td>
<textarea></textarea>
</td>
</tr>
</tbody>
</table>
</div>
</body>
用IE6點擊測試。
2.document.write
<script>for(xindocument.write){document.write(x);}</script>
在FF和Chrome中,都會打印出“prototype”字符,在IE6中立即崩潰。
用IE6點擊測試。
3.在CSS中使用通配符*,在Html的table標簽中直接放置內容(而不是<tr>標簽之類)
<style>*{position:relative}</style><table>aaabbbccc</table>
用IE6點擊測試。
4.CSS中出現@+任意字符+/*立即崩潰
<style>@;/*</style>
用IE6點擊測試。
5.onload="window()"
<bodyonload="window()"></body>
用IE6點擊測試。
注:原文中有6個導致崩潰的問題,我裝的是IETester,有一個沒有測出來。所以沒寫上來。