2

我建立了一個基於HTML5 Boilerplate的網站。我沒有改變樣板中的任何內容,除了將自定義代碼添加到HTML中的正文部分。我將IE8作爲支持的最低IE版本。IE8自動使用「IE8兼容查看」瀏覽器模式和「IE7標準」文檔模式

問題是,當我在IE8上打開我的頁面時,它自動使用「IE8兼容視圖」瀏覽器模式和「IE7標準」文檔模式,而不是在瀏覽器和文檔模式下使用IE8標準。

任何人都有一個想法,爲什麼這可能會發生,以及如何強制它使用正確的模式,而不需要用戶更改IE8中的選項?

+0

應該工作 – STEEL

+0

http://stackoverflow.com/questions/2597289/force-browser-mode-ie8-和文件模式ie8標準 –

回答

3

您可能正在本地網絡上測試該網站。在這種情況下,IE8默認使用問題中描述的模式。對於來自本地網絡或Intranet的站點,IE8具有不同的默認行爲。

如果您正在測試的頁面位於本地網絡之外,那麼IE8將使用正確的標準模式。

如果您需要在本地測試網站,只需使用IE8的開發人員工具即可切換到IE8標準瀏覽器模式。

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

使用上面的元標記強制IE使用它可用的最新渲染引擎。

+0

這是行不通的。請參閱下面的答案。 – chocobanana

+0

我確實嘗試過。它默認在HTML5 Boilerplate的index.html模板中。我自己做了一些研究和實驗,並得出了我在下面提到的結論。 – chocobanana

0

chocobanana描述的行爲也被描述爲here,參見條目「IE9 Compatibility View and Intranet Sites」。

如果您不希望始終在開發人員工具中手動切換瀏覽器/文檔模式,也不想包含X-UA兼容標籤,則可以撤消始終以共享模式呈現Intranet站點的默認設置通過取消選中工具>兼容性視圖設置中的相應複選框。

我花了將近一天找出爲什麼我在一個IE8選項卡的本地版本看起來精緻而相同頁面在另一個選項卡內網服務器的版本都搞砸了關於佈局... *嘆*

在任何情況下,這隻適用於您的機器,所以爲了強制您的客戶不會陷入compat模式,您必須設置相應的meta標籤。

0

請檢查下列事項:

1)使用「查看源文件」,請確保您使用的

<!DOCTYPE html> 

在你的頁面的頂部。

2)如果該行出現在頂部,請確保在該行之前沒有空格或換行符。它發生在我身上,某些PHP在打印到屏幕後出現了一個額外的新行,並導致doctype不顯示爲文檔中的第一件事。