2009年7月27日星期一

IE8 Rendering Mode

IE8使用新的方法來選擇顯示網頁的標準:
就是於html 的 header內加入下列語句
<meta equiv="X-UA-Compatible" content="IE=8">

或者於http的response header加上
X-UA-Compatible:IE=8

content可以為下列的value

IE=8 使用 IE8 的 standard mode
IE=7 使用 IE7 的 standard mode
IE=5 使用 IE 多年來臭名遠播的quirk mode
IE=EmulateIE8 根據 html 內的 doctype 來決定是 standard 或者 quirk mode (但 doctype 也有很多種 不同的模式,M$沒有清楚說明,所謂的 standard mode 之下,不同的 doctype 會否有所不同。我自己理解為 standard mode 只有一種,不論你設定的是什麼 doctype)
IE=EmulateIE7 和樓上一樣,只是 standard mode 不是 IE8 的 standard 而是 IE7 的
IE=Edge 使用最新最合乎標準的模式,暫時為 IE=8

一點意外
我加入了 meta tag 之後,不知為何 IE8 總是替我選擇 quirk mode,後來才發理是 companion js 搞的鬼,只要在附加元件中停用或移除它,IE8 就能正常選擇了。
Companion js 是IE6 IE7時用作 console 的代替品,IE7 既然自帶了完整的 developer tools,那就不需要再用了。



有Source有偈傾
http://msdn.microsoft.com/en-us/library/cc288325%28VS.85%29.aspx
http://msdn.microsoft.com/en-us/library/ms533876%28VS.85%29.aspx

沒有留言: