2010-09-27 5 views
72

Ich habe eine Weile auf diesem eine stecken - ich konnte nicht herausfinden, warum eine Website in zwei identischen Versionen von Internet Explorer anders rendert. Vor einer halben Stunde bin ich im IE auf einen Kompatibilitätsmodus-Button gestoßen, der mich sehr wütend gemacht hat.Wie kann ich den IE-Kompatibilitätsmodus programmatisch deaktivieren?

Deaktivieren des Kompatibilitätsmodus hat mein Problem behoben.

Gibt es eine Möglichkeit, es programmgesteuert zu deaktivieren, d. H. Von einer Webseite?

Edit:

kam in diesem Blog https://blogs.msdn.com/b/askie/archive/2009/03/23/understanding-compatibility-modes-in-internet-explorer-8.aspx

Ich werde ein Beispiel-Code schreiben nach dem Lesen des Artikels

+0

Siehe http: // Stackoverflow. com/questions/1014666/force-ie8-in-ie7-Kompatibilitätsmodus. Es hat nichts mit dem Doctype zu tun. –

+0

Ich erwarte, dass es eine Windows/IE-Einstellung gibt, aber nichts, was Sie von der Webseite tun können, um dies zu diktieren, da Sie in IE8 bleiben wollen, nicht in den Kompatibilitätsmodus gehen. –

+0

Nicht sicher, ob Sie dies über eine Webseite tun können, ist möglicherweise besser für den IE-Kompatibilitätsmodus (IE 7) zu codieren. :( – Spooks

Antwort

88

Wenn Sie die „alte“ Rendering wollen, und keine Schaltfläche in der Symbolleiste zu zeigen, so dass die Benutzer-Modi schalten Sie diese verwenden können:

<head> 
    <!-- Mimic Internet Explorer 7 --> 
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" > 
    <title>My Web Page</title> 
</head> 

andere Optionen (alt und neu) schließen ein: IE=5 , IE=7, IE=8 oder IE=edge

(Rand entspricht höchsten Modus verfügbar)

+0

Danke - das funktioniert. Das bedeutet immer noch, dass ich meinen Code ändern muss, um in IE 7 zu arbeiten. –

+0

Gibt es etwas Besonderes, das Sie nicht im IE8 Standards-Modus arbeiten? Wenn ja, posten Sie eine andere Frage und vielleicht können wir es für Sie lösen. – scunliffe

+0

Es ist eine Positionierung von divs. Ich habe irgendwo gelesen, dass IE7 zusätzliche Pixel für den linken und rechten Rand oder etwas in diesen Linien braucht. Die Website sieht gut aus in Firefox, Safari, Chrom, sogar ie 8 ohne Kompatibilitätsmodus ... aber IE 7 ist eine andere Geschichte –

4

Bitte beachten Sie auch, dass auch Einstellungen IE8 Browser einen bestimmten Modus erzwingen können. Ich habe einen Kunden, bei dem der IE8-Kompatibilitätsmodus durch die Richtlinie im Intranetmodus erzwungen wird.

+0

+1, dies kann auch in IE9 erzwungen werden. Vermutlich in allen neueren IE-Versionen. –

0

Bitte fügen Sie IE zu zwingen, nicht Kompatibilitätsmodus

<meta http-equiv=Content-Type content="text/html; charset=utf-8"> 
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8"> 
0

In meinem Fall anwenden, ich habe es indem Sie den folgenden Tag nach dem <head> Tag festgelegt:

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