博客分類: 瀏覽器兼容性 JavaScript 作者:zccst 1,X-UA-Co

<meta http-equiv="X-UA-Compatible" content="IE=Edge">


1,X-UA-Compatible是神馬? 
文檔:https://www.modern.ie/en-us/performance/how-to-use-x-ua-compatible 

X-UA-Compatible是IE8的一個專有<meta>屬性,它告訴IE8採用何種IE版本去渲染網頁,在html的<head>標籤中使用。可以在微軟官方文檔獲取更多介紹。 

爲什麼要用X-UA-Compatible? 

在IE8剛推出的時候,很多網頁由於重構的問題,無法適應較高級的瀏覽器,所以使用X-UA-Compatible標籤強制IE8採用低版本方式渲染。 

使用下面這段代碼後,開發者無需考慮網頁是否兼容IE8瀏覽器,只要確保網頁在IE6、IE7下的表現就可以了。 

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> 
//emulate 仿真 

給網站添加X-UA-Compatible標籤 

我建議使用下面的X-UA-Compatible標籤: 

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> 
IE=edge告訴IE使用最新的引擎渲染網頁,chrome=1則可以激活Chrome Frame 



爲了不掩蓋重點,直接看 
2,問:X-UA-Compatible設爲IE=edge是不是等同於不設置? 
既然IE=edge是“以最高級別的可用模式顯示內容”,那是不是和去掉相同的效果? 

答:不一樣。 
有些因素會自動觸發兼容性文檔視圖,這個時候設置X-UA-Compatible就可以防止這個自動觸發的行爲。 
默認行爲大致有這些: 
  存在於註冊表中的兼容性視圖列表,當url匹配時將自動切換到兼容性視圖 
  在註冊表中的對應字段指定了使用兼容性視圖來顯示所有網站 
  未指定DOCTYPE,則使用Quirks模式 
  曾經遇到過錯誤 

一個有意思的事實是,設置了<meta http-equiv="X-UA-Compatible" content="IE=edge">之後,即使未聲明doctype,在IE8、IE9(未測試IE10+,不過行爲應該類似)下面,頁面也不會進入quirks模式。 

ref: http://msdn.microsoft.com/zh-cn/library/cc288325 




使用 X-UA-Compatible 標頭可指定頁面支持的 Internet Explorer 版本。 使用 document.documentMode 可確定網頁的兼容性模式。 





<meta http-equiv="X-UA-Compatible" content="IE=5" /> 
像是使用了 Windows Internet Explorer 7 的 Quirks 模式,這與 Windows Internet Explorer 5 顯示內容的方式很相似。 

<meta http-equiv="X-UA-Compatible" content="IE=7" /> 
無論頁面是否包含 <!DOCTYPE> 指令,均使用 Windows Internet Explorer 7 的標準渲染模式。 

<meta http-equiv="X-UA-Compatible" content="IE=8" /> 
開啓 IE8 的標準渲染模式,但由於本身 X-UA-Compatible 文件頭僅支持 IE8 以上版本,因此等同於冗餘代碼。 

<meta http-equiv="X-UA-Compatible" content="edge" /> 
Edge 模式通知 Windows Internet Explorer 以最高級別的可用模式顯示內容,這實際上破壞了“鎖定”模式。 

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> 
EmulateIE7 模式通知 Windows Internet Explorer 使用 <!DOCTYPE> 指令確定如何呈現內容。標準模式指令以Windows Internet Explorer 7 標準模式顯示,而 Quirks 模式指令以 IE5 模式顯示。與 IE7 模式不同,EmulateIE7 模式遵循 <!DOCTYPE> 指令。對於多數網站來說,它是首選的兼容性模式。 
在現階段,IE8 版本推向市場沒有多久,份額不高。因此,考慮兼容舊版本的模式值得推薦。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章