Ich habe mich eine Weile damit beschäftigt - ich konnte nicht herausfinden, warum eine Website in zwei identischen Versionen von Internet Explorer unterschiedlich gerendert wird. Vor einer halben Stunde stieß ich im IE auf eine Schaltfläche für den Kompatibilitätsmodus, die mich sehr verärgerte.
Das Deaktivieren des Kompatibilitätsmodus hat mein Problem behoben.
Gibt es eine Möglichkeit, es programmgesteuert zu deaktivieren, dh von einer Webseite aus?
Bearbeiten:
Ich bin gerade auf diesen Blog gestoßen: https://blogs.msdn.com/b/askie/archive/2009/03/23/understanding-compatibility-modes-in-internet-explorer-8.aspx
Ich werde nach dem Lesen des Artikels einen Beispielcode veröffentlichen
Antworten:
Wenn Sie möchten, dass das "alte" Rendering und keine Schaltfläche in der Symbolleiste angezeigt werden, damit Benutzer den Modus wechseln können, können Sie Folgendes verwenden:
<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
, oderIE=edge
(Kante entspricht dem höchsten verfügbaren Modus)
quelle
Sie müssen wahrscheinlich Ihren DOCTYPE richtig einstellen. Weitere Informationen finden Sie in den Artikeln von MSDN zu DOCTYPE und Definieren der Dokumentkompatibilität .
quelle
Bitte beachten Sie auch, dass auch IE8-Browsereinstellungen einen bestimmten Modus erzwingen können. Ich habe einen Kunden, dessen IE8-Kompatibilitätsmodus durch Richtlinien im Intranetmodus erzwungen wird.
quelle
Bitte hinzufügen, um zu erzwingen, dass der IE den Kompatibilitätsmodus nicht anwendet
<meta http-equiv=Content-Type content="text/html; charset=utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8">
quelle
In meinem Fall habe ich das Problem behoben, indem ich nach dem
<head>
Tag das folgende Tag hinzugefügt habe :<meta content="IE=edge" http-equiv="X-UA-Compatible">
quelle