0

如果我所服務的使用使用如果我強制IE 8的開發工具是「瀏覽器模式:IE 8」和「文檔模式:IE 7標準」,現在是IE 7還是IE 8?

<meta content='IE=EmulateIE7' http-equiv='X-UA-Compatible'> 

HTML 4.01嚴格,而這個頁面加載到IE 8的網頁,那麼IE 8的開發工具表明,它正在使用:

Browser Mode: IE 8  Document Mode: IE 7 Standards 

那麼, IE 8部分採用IE 8引擎,部分採用IE 7引擎?哪部分是IE 8,哪部分是IE 7?

HTTP_USER_AGENT被作爲表示:

的Mozilla/4.0(兼容; MSIE 8.0; Windows NT的5.1;三叉戟/ 4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30 ; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)

所以我想這是不是 「完全」 IE 7

回答

1

由於元標記告訴IE8模擬IE7,佈局引擎(用於呈現頁面的瀏覽器組件)被更改爲模仿IE7。 Ergo,文檔模式顯示爲IE7標準模式。

由於IE8依靠元標記來確定如何呈現頁面,我猜IE8沒有設置爲使用兼容性視圖。這樣,瀏覽器模式顯示爲IE8,並且它發送的用戶代理字符串也是IE8的。

所以回顧一下:其餘的瀏覽器仍然是IE8;只有佈局引擎作爲IE7的。

+0

我在開發者工具上想過,用戶可以改變它們意味着我們可以強制它使用該模式並忽略IE = EmulateIE7? – 2010-06-26 08:39:01

+0

是的,但開發人員工具主要由開發人員使用,我們強制這些模式進行測試和調試。用戶通常不會看到或使用該功能。 – BoltClock 2010-06-26 09:10:12