2013-03-13 47 views
30

我有一個在IE10中破解的應用程序,但在IE10兼容性視圖中運行正常。快速谷歌結果強制IE10在IE10兼容性視圖中運行?

<meta http-equiv="X-UA-Compatible" content="IE=8"> 
<!-- plus variations such as emulate, quirks, 7, 8, 9 ---> 

標記。標籤上的一些MS文檔是here。如果按F12鍵,則可以看到它改變了文檔模式。我需要它將瀏覽器模式更改爲Internet Explorer 10兼容性視圖。有沒有任何標籤可以做到這一點?

enter image description here

UPDATE 我需要一提的是我已經嘗試了所有的文檔類型之後,並沒有他們的工作。我認爲讓IE10在IE10中工作的唯一方法是使用兼容性視圖。

<!-- 
    <!DOCTYPE html> 
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> 
    TRIED NO DOCTYPE AT ALL TOO 
--> 
+1

我有完全相同的問題。 – 2013-03-15 16:15:38

+12

最好的解決方案是解決您遇到的問題,使您需要兼容性視圖。這將會更加持續,並且可能會提高性能。你有更多的IE10標準問題?也許我們可以修復這些。 – 2013-03-16 19:54:43

+1

如果您可以描述未在兼容模式下運行時發生的問題,那麼可以修復這些問題。很難說你的意思是「打破了IE10」 – 2013-03-17 12:57:26

回答

4

雖然你應該修正自己的網站,它的工作原理沒有兼容性視圖,則嘗試將X-UA-Compatible meta標籤的第一件事開幕<head>後,之前標題

15

如果你想設置在瀏覽器本身兼容模式不是在HTML做以下

  1. 打開IE 10
  2. 按ALT鍵,彈出IE菜單欄
  3. 單擊工具菜單上
  4. 點擊兼容性視圖設置。
  5. 點擊勾選框;顯示兼容性視圖的所有網站
  6. 添加只有期望的網站的相容視圖

如下面的圖所示。該網站應該打開IE 10兼容性視圖。

enter image description here

+0

這是使「兼容性視圖」起作用的唯一途徑。 – 2014-01-29 16:47:52

11

你可以試試:

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

就像你嘗試過,但謹慎:

這似乎是X-UA兼容的標籤已經成爲第一個標籤在<頭>部分

如果這個結論是正確的,那麼我相信它在微軟的博客/ msdn中沒有記錄(如果有文檔記錄,那麼它不會從文檔中獲得足夠好的結果)。確保這是強制IE9中的第一個元標記成功切換到IE8模式

+0

需求記錄在這裏:http://msdn.microsoft.com/en-us/library/ie/jj676915.aspx – mss 2013-04-22 09:12:28

+2

這不會改變瀏覽器模式,但文檔模式。我不知道是否有任何區別,但到目前爲止,我只能使用meta標籤切換以後的版本。另一方面,後者足以讓我遇到麻煩的網頁再次運行。 – noamik 2013-06-04 08:30:00

+0

我必須把這條線放在哪裏? – becko 2015-09-23 19:28:34

6

我有完全相同的問題,這 - 「meta http-equiv =」X-UA-Compatible「content =」IE = 7 「>」在IE8和IE9中效果很好,但在IE10中效果不佳。 .NET 2.0和.NET 4附帶的服務器瀏覽器定義文件中存在一個錯誤,即它們包含一定範圍的瀏覽器版本的定義。但某些瀏覽器(如IE 10)的版本不在這些範圍內。因此,ASP.NET將它們視爲未知瀏覽器,並默認爲低級定義,這有一定的不便,就像它不支持JavaScript等功能一樣。

感謝Scott Hanselman對此修復。

這裏是鏈接 -

http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx

這MS KP修復只是增加了丟失的文件到您的服務器上的asp.net。我安裝它並重新啓動我的服務器,現在它完美地工作。我本以爲MS會給這個修復更廣泛的分佈。

裏克

0

你應該嘗試的IE 5個怪癖兼容性MOD(是默認的IE10兼容性視圖)

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

重要的是:在你的iframe結構的頂部設置(如果你使用iframe結構)

更多信息12

5

我有同樣的問題。這個問題是MSIE 10中的一個錯誤,所以告訴人們解決他們的問題並沒有幫助。也沒有告訴訪問者您的網站將您的網站添加到兼容性視圖,bleh。在我的情況下,問題是,下面的代碼不會顯示任何文本:

document.write ('<P>'); 
document.write ('Blah, blah, blah... '); 
document.write ('</P>'); 

大量的試驗和錯誤之後,我決定卸下<P>和</P >標籤造成對正常顯示的文本頁面(因此,問題與文檔模式,而不是瀏覽器模式,至少在我的情況下)。在userAgent爲MSIE時刪除<P>標籤不是我想要放入我的頁面的「修復」。

的解決方案,如其他人所說,是:

<!DOCTYPE HTML whatever doctype you're using....> 
<HTML> 
<HEAD> 
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8"> 
    <TITLE>Blah... 

是,meta標籤必須是頭後的第一個標籤。

1

X-UA-Compatiblemeta元素僅更改文檔模式,而不是瀏覽器模式。瀏覽器模式是在請求頁面之前選擇的,所以沒有辦法包含任何標記,JavaScript等來改變它。儘管文檔模式回退到渲染引擎的舊標準和怪異模式,但瀏覽器模式只是改變了瀏覽器標識方式,比如用戶代理字符串。

如果您希望爲所有用戶更改瀏覽器模式(而不是在工具中或通過設置手動更改),唯一方法(AFAICT)是將您的網站添加到Microsoft的Copat視圖列表中。這由微軟維護以覆蓋破壞的網站。有information on how to remove your site from the compat view list,但我無法找到要求添加的內容。

然而,首選的方法是首先嚐試修復網站上的任何問題,因爲當您不使用最新的文檔和瀏覽器模式運行時,無法利用瀏覽器中的改進功能(例如提高性能)。

+0

對於許多Web應用程序來說,修復這些問題不是一種選擇。當解決方案不是完全替換軟件,而是需要修復時才需要。 – Underverse 2015-02-10 23:10:17