2013-02-12 52 views
0

我試圖打印一條消息給用戶,當他使用IE版本低潮IE8。爲了測試它,我啓用文檔模式8.但是,當我在javascript索要文檔模式,我總是收到「怪異模式:5」IE8文檔模式總是'怪異模式'

document.documentMode; 

有誰知道爲什麼嗎?

這裏是我的規格的開頭:

<!doctype html> 
<html> 
<head> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> 
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
    ... 

解決:

我使用的用戶代理然而並檢查了「三叉戟/ 4.0」,這是隻顯示在IE8標籤

+0

如果感覺標記無效,它不會切換到quirks模式嗎? – 2013-02-12 10:55:17

+0

@GungFoo - 不,它只關心Doctype和X-UA兼容。 – Quentin 2013-02-12 10:59:07

+0

您指定了哪些DocType? – 2013-02-12 11:09:57

回答

0

使用在你的頁面頭部這個元標記...

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> 

它將最終確定您的文檔模式。

+0

我添加了它,但我仍然收到'怪癖模式'... – wasp256 2013-02-12 11:04:27

+0

如果您關心的是如果用戶在IE8版本以下訪問您的網站時顯示消息,請使用user-agent等最聰明的方式。每個瀏覽器都有唯一的用戶代理字符串,因此請根據用戶代理字符串顯示您的消息。我認爲找到並最終確定文檔模式更容易。 – 2013-02-12 11:08:35

+0

@Simon提到的兩點也是正確的。所以請從您的頁面源驗證它。否則,我沒有看到任何設置錯誤。 – 2013-02-12 11:23:26

1

有一對夫婦的事情,可以強制IE到怪異模式最明顯的兩個是

  1. 缺少的,格式不正確或過時的文檔類型在頁面中看到的table near the bottom of this page for a comprehensive guide to which doctypes will trigger quirksmode
  2. 任何文檔類型之前,IE堅持在DocType是文件中出現的絕對第一件事,或者它假定沒有DocType並且反轉到QuirksMode
+0

doctype是第一件事,請看我的更新 – wasp256 2013-02-12 12:11:24