Frage Was macht ?


Was ist der Unterschied, wenn eine Webseite mit beginnt?

<!DOCTYPE html> 
<html> 
  <head> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 

und Wenn Seite mit beginnt

<!DOCTYPE html> 
<html> 
  <head> 
     <!-- without X-UA-Compatible meta -->

Wenn es keinen Unterschied gibt, nehme ich an, ich kann das einfach ignorieren X-UA-Compatible Meta-Header, da ich möchte nur in den meisten Standard-Modus in allen IE-Versionen gerendert werden.


1196
2017-07-21 04:29


Ursprung


Antworten:


Oktober 2015 Update

Diese Antwort wurde vor einigen Jahren gepostet und jetzt sollte die Frage wirklich sein sollten Sie überhaupt in Betracht ziehen, die X-UA-Compatible Tag auf Ihrer Website? mit den Änderungen, die Microsoft an seinen Browsern vorgenommen hat (mehr dazu unten).

Abhängig davon, welche Microsoft-Browser Sie unterstützen, müssen Sie möglicherweise nicht weiter mit dem verwenden X-UA-Compatible Etikett. Wenn Sie IE9 oder IE8 unterstützen müssen, dann würde ich empfehlen, das Tag zu verwenden. Wenn Sie nur die neuesten Browser (IE11 und / oder Edge) unterstützen, dann würde ich dieses Tag ganz vergessen. Wenn Sie Twitter Bootstrap verwenden und Validierungswarnungen beseitigen müssen, muss dieses Tag in der angegebenen Reihenfolge angezeigt werden. Zusätzliche Informationen unten:


Das X-UA-Compatible Mit Meta-Tags können Webautoren auswählen, welche Version von Internet Explorer die Seite darstellen soll. IE11 hat Änderungen an diesen Modi vorgenommen; Siehe unten den IE11-Hinweis. Microsoft Edge, der Browser, der nach IE11 veröffentlicht wird, wird nur die X-UA-Compatible Meta-Tag unter bestimmten Umständen. Siehe die Microsoft Edge-Notiz unten.

Laut Microsoft, bei der Verwendung der X-UA-Compatible Tag sollte es in Ihrem Dokument so hoch wie möglich sein head:

Wenn Sie das X-UA-kompatible META-Tag verwenden, möchten Sie es so nah wie möglich an den oberen Rand des HEAD der Seite platzieren. Internet Explorer beginnt, Markup mit der neuesten Version zu interpretieren. Wenn der Internet Explorer auf den X-UA-kompatiblen META-Tag stößt, beginnt er mit der Verwendung der Engine der angegebenen Version. Dies ist ein Leistungseinbruch, da der Browser den Inhalt analysieren und neu starten muss.

Hier sind Ihre Möglichkeiten:

  • "IE = Kante"
  • "IE = 11"
  • "IE = EmulateIE11"
  • "IE = 10"
  • "IE = EmulierenIE10"
  • "IE = 9"
  • "IE = EmulateIE9
  • "IE = 8"
  • "IE = EmulierenIE8"
  • "IE = 7"
  • "IE = Emulieren SIE7"
  • "IE = 5"

Um zu verstehen, was jeder bedeutet, hier sind Definitionen von Microsoft:

Internet Explorer unterstützt eine Reihe von Dokumentkompatibilitätsmodi, die verschiedene Funktionen aktivieren und die Art der Anzeige von Inhalten beeinflussen können:

  • Im Edge-Modus wird Internet Explorer angewiesen, Inhalte im höchsten verfügbaren Modus anzuzeigen. Bei Internet Explorer 9 entspricht dies dem IE9-Modus. Wenn eine zukünftige Version von Internet Explorer einen höheren Kompatibilitätsmodus unterstützt, werden Seiten, die auf Kantenmodus eingestellt sind, im höchsten Modus angezeigt, der von dieser Version unterstützt wird. Dieselben Seiten würden immer noch im IE9-Modus angezeigt werden, wenn sie mit Internet Explorer 9 angezeigt werden.   Internet Explorer unterstützt eine Reihe von Dokumentkompatibilitätsmodi, die verschiedene Funktionen aktivieren und die Art der Anzeige von Inhalten beeinflussen können:

  • Der IE11-Modus bietet die höchste Unterstützung für etablierte und neue Industriestandards, einschließlich HTML5, CSS3 und anderen.

  • Der IE10-Modus bietet die höchste Unterstützung für etablierte und neue Industriestandards, einschließlich HTML5, CSS3 und anderen.

  • Der IE9-Modus bietet die höchste Unterstützung, die für etablierte und aufkommende Industriestandards verfügbar ist, einschließlich HTML5 (Arbeitsentwurf), W3C Cascading Style Sheets Level 3-Spezifikation (Arbeitsentwurf), Scalable Vector Graphics (SVG) 1.0 Spezifikation und anderen. [Anmerkung des Herausgebers: IE 9 nicht unterstützt CSS3 Animationen].

  • Der IE8-Modus unterstützt viele etablierte Standards, einschließlich der W3C Cascading Style Sheets Level 2.1 Spezifikation und der W3C Selectors API; Außerdem bietet es eingeschränkte Unterstützung für die W3C Cascading Style Sheets Level 3-Spezifikation (Working Draft) und andere aufkommende Standards.

  • Der IE7-Modus rendert Inhalte so, als ob sie im Standardmodus von Internet Explorer 7 angezeigt würden, unabhängig davon, ob die Seite eine Direktive enthält oder nicht.

  • Emulieren IE9-Modus weist Internet Explorer an, die Direktive zu verwenden, um zu bestimmen, wie Inhalte wiedergegeben werden. Standards-Modus-Direktiven werden im IE9-Modus angezeigt und Quirks-Modus-Direktiven werden im IE5-Modus angezeigt. Im Gegensatz zum IE9-Modus respektiert der IE9-Emulationsmodus die Direktive.

  • Emulate IE8-Modus weist Internet Explorer an, die Direktive zu verwenden, um zu bestimmen, wie Inhalte wiedergegeben werden. Standards-Modus-Direktiven werden im IE8-Modus angezeigt, und die Direktiven für den Quirks-Modus werden im IE5-Modus angezeigt. Im Gegensatz zum IE8-Modus respektiert der IE8-Emulationsmodus die Direktive.

  • Emulate IE7-Modus weist Internet Explorer an, die Direktive zu verwenden, um zu bestimmen, wie Inhalte wiedergegeben werden. Standards-Modus-Direktiven werden im Internet Explorer 7-Standardmodus angezeigt, und Mack-Modus-Direktiven werden im IE5-Modus angezeigt. Im Gegensatz zum IE7-Modus respektiert der Emulate IE7-Modus die Direktive. Für viele Websites ist dies der bevorzugte Kompatibilitätsmodus.

  • Im IE5-Modus wird Inhalt so dargestellt, als ob er im Quirks-Modus von Internet Explorer 7 angezeigt würde. Dies ähnelt der Art und Weise, wie der Inhalt in Microsoft Internet Explorer 5 angezeigt wurde.

IE10 HINWEIS: Ab IE10 verhält sich der Eigenschaftsmodus anders als in früheren Versionen des Browsers. In IE9 und früheren Versionen beschränkte der Mapping-Modus die Webseite auf die von IE5.5 unterstützten Funktionen. In IE10 entspricht der Eigenschaftsmodus den in der HTML5-Spezifikation angegebenen Unterschieden.

Persönlich wähle ich immer das http-equiv="X-UA-Compatible" content="IE=edge" Meta-Tag, da ältere Versionen viele Bugs haben, und ich will nicht, dass IE entscheidet, in den "Kompatibilitätsmodus" zu gehen und meine Seite als IE7 vs IE8 oder 9 zu zeigen. Ich bevorzuge immer die neueste Version von IE.

IE11

Von Microsoft:

Beginnend mit IE11 ist der Kantenmodus der bevorzugte Dokumentmodus; Es stellt die höchste Unterstützung für moderne Standards dar, die dem Browser zur Verfügung stehen.

Verwenden Sie die Deklaration des HTML5-Dokumenttyps, um den Kantenmodus zu aktivieren:

<!doctype html>

Der Edge-Modus wurde in Internet Explorer 8 eingeführt und war in jeder folgenden Version verfügbar. Beachten Sie, dass die vom Edge-Modus unterstützten Funktionen auf diejenigen beschränkt sind, die von der jeweiligen Version des Browsers unterstützt werden, der den Inhalt rendert.

Beginnend mit IE11 sind Dokumentmodi veraltet und sollten nicht mehr verwendet werden, außer auf temporärer Basis. Stellen Sie sicher, dass Websites aktualisiert werden, die auf Legacy-Funktionen und Dokumentmodi zurückgreifen, um modernen Standards zu entsprechen.

Wenn Sie einen bestimmten Dokumentmodus anvisieren müssen, damit Ihre Website während der Überarbeitung für die Unterstützung moderner Standards und Funktionen funktioniert, müssen Sie darauf achten, dass Sie eine Übergangsfunktion verwenden, die in zukünftigen Versionen möglicherweise nicht verfügbar ist.

Wenn Sie derzeit den x-ua-kompatiblen Header verwenden, um auf einen älteren Dokumentmodus abzuzielen, ist es möglich, dass Ihre Website nicht die beste mit IE11 verfügbare Erfahrung widerspiegelt.

Microsoft Edge (Ersatz für Internet Explorer, der mit Windows 10 ausgeliefert wird)

Informationen zu X-UA-Compatible Meta-Tag für die "Edge" -Version von IE. Von Microsoft:

Einführung in den "lebenden" Edge-Dokument-Modus

Wie wir im August 2013 angekündigt haben, werden die Dokument-Modi ab IE11 eingestellt. Mit unseren neuesten Plattform-Updates ist die Notwendigkeit für ältere Dokument-Modi in erster Linie auf Enterprise-Legacy-Web-Apps beschränkt. Mit neuen Architekturänderungen werden diese älteren Dokumentationsmodi von Änderungen im "lebenden" Edge-Modus isoliert, was dazu beiträgt, dass Kunden, die auf diese Modi angewiesen sind, ein wesentlich höheres Maß an Kompatibilität erhalten und wir bei Verbesserungen in Edge noch schneller vorankommen . Die nächste Hauptversion von IE berücksichtigt weiterhin Dokumentmodi, die von Intranetsites, Websites in der Kompatibilitätsansichtsliste und nur im Unternehmensmodus verwendet werden.

Öffentliche Internetsites werden mit der neuen Edge-Modus-Plattform gerendert (ohne X-UA-Compatible zu ignorieren). Unser Ziel ist, dass Edge von nun an der "lebende" Dokumentenmodus ist und keine weiteren Dokumentationsmodi eingeführt werden.

Da die Änderungen in Microsoft Edge die Dokumentmodi in den meisten Fällen nicht mehr unterstützen, verfügt Microsoft über ein Werkzeug Scannen Sie Ihre Website, um zu überprüfen, ob Code mit Edge nicht kompatibel ist.

Chrome = 1 Info für IE

Es gibt auch chrome=1 dass Sie zusammen mit einer der oben genannten Optionen verwenden oder verwenden können: <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">. chrome=1 ist für Google Chrome Frame, definiert als:

Google Chrome Frame ist ein Open-Source-Browser-Plug-in. Nutzer, die das Plug-In installiert haben, haben Zugriff auf die offenen Webtechnologien und die schnelle JavaScript-Engine von Google Chrome, wenn sie Seiten im Browser öffnen.

Google Chrome Frame verbessert nahtlos Ihre Browser-Erfahrung in Internet Explorer. Es zeigt Google Chrome Frame-fähige Websites mit der Google Chrome-Rendertechnologie an. Damit erhalten Sie Zugriff auf die neuesten HTML5-Funktionen sowie die Leistungs- und Sicherheitsfunktionen von Google Chrome, ohne die normale Browsernutzung zu unterbrechen.

Wenn Google Chrome Frame installiert ist, wird das Web einfach besser, ohne dass Sie darüber nachdenken müssen.

Aber damit das Plug-in funktioniert müssen Sie verwenden chrome=1 in dem X-UA-Compatible Meta-Tag.

Weitere Informationen zu Chrome Frame finden Sie Hier.

Hinweis: Google Chrome Frame funktioniert nur für IE6 bis IE9und wurde am 25. Februar 2014 in den Ruhestand verabschiedet. Weitere Informationen können gefunden werden Hier. Danke an @mck für den Link.

Validierung:

HTML5:

Die Seite wird mit dem validiert W3-Prüfer nur bei der Verwendung <meta http-equiv="X-UA-Compatible" content="IE=Edge">. Für andere Werte wird der Fehler ausgelöst: A meta element with an http-equiv attribute whose value is X-UA-Compatible must have a content attribute with the value IE=edge. Mit anderen Worten, wenn Sie haben IE=edge,chrome=1 es wird nicht validiert. Ich ignoriere diesen Fehler vollständig, da moderne Browser diese Codezeile einfach ignorieren.

Wenn Sie über einen vollständig gültigen Code verfügen müssen, sollten Sie dies auf Serverebene durch Festlegen des HTTP-Headers in Betracht ziehen. Als eine Anmerkung, sagt Microsoft, If both of these instructions are sent (meta and HTTP), the developer's preference (meta element) takes precedence over the web server setting (HTTP header).  Sehen Olibres Antwort oder Bitinns Antwort Weitere Informationen zum Festlegen eines HTTP-Headers

XHTML

Es gibt kein Problem mit der Validierung bei der Verwendung <meta http-equiv="X-UA-Compatible" content="IE=Edge" /> solange das Etikett richtig geschlossen ist (d. h. /> vs >).

Twitter Bootstrap

Dieses Tag wurde vom Bootstrap-Team seit mindestens 2014 dringend empfohlen Bootlint, der Linter, der vom twbs - Team verfasst wurde, wirft weiter ein Warnung wenn das Tag weggelassen wird. Der Linter unterscheidet zwischen Warnungen und Fehlern. Daher kann der Schweregrad des Auslassens dieses Tags als geringfügig angesehen werden.


Für weitere Informationen über X-UA-Compatible siehe Microsoft Website Dokumentkompatibilität definieren.

Weitere Informationen dazu, was IE unterstützt, finden Sie unter caniuse.com.

Weitere Informationen zu den Bootstrap-Anforderungen von Twitter finden Sie im Bootlint-Projekt Wiki-Seite.


1461
2017-07-21 05:22



Benutzen content="IE=edge,chrome=1" Überspringe andere X-UA-Compatible Modi

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
                                   -------------------------- 
  • Kein Kompatibilitätssymbol 
    Die IE9-Adressleiste wird nicht angezeigt Kompatibilitätsansicht-Schaltfläche 
     und die Seite zeigt auch nicht ein Durcheinander von Menüs, Bildern und Textfeldern.

  • Eigenschaften 
     Dieses Meta-Tag muss aktiviert sein javascript::JSON.parse() auf IE8
    (sogar wenn <!DOCTYPE html> ist anwesend)

  • Richtigkeit 
     Rendering / Ausführung von modernem HTML / CSS / JavaScript ist valider (netter).

  • Performance 
     Das Trident-Rendering-Engine sollte in seiner schneller laufen Kante Modus.


Verwendung

In deinem HTML

<!DOCTYPE html> 
<html> 
  <head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  • IE=edge bedeutet IE sollte die neueste (Edge) Version seiner Rendering-Engine verwenden
  • chrome=1 bedeutet IE sollte die verwenden Chrome-Rendering-Engine wenn installiert

Oder besser in der Konfiguration Ihres Webservers:
(Siehe auch die RiaDs Antwort)

  • Apache wie vorgeschlagen von Pixel

    <IfModule mod_setenvif.c>
      <IfModule mod_headers.c>
        BrowserMatch MSIE ie
        Header set X-UA-Compatible "IE=Edge,chrome=1" env=ie
      </IfModule>
    </IfModule>
    <IfModule mod_headers.c>
      Header append Vary User-Agent
    </IfModule>
    
  • Nginx wie vorgeschlagen von Stef Pause

    server {
      #...
      add_header X-UA-Compatible "IE=Edge,chrome=1";
    }
    
  • Lack Proxy wie von vorgeschlagen Lucas Riutzel

    sub vcl_deliver {
      if( resp.http.Content-Type ~ "text/html" ) {
        set resp.http.X-UA-Compatible = "IE=edge,chrome=1";
      }
    }
    
  • IIS (seit v7)

    <configuration>
      <system.webServer>
         <httpProtocol>
            <customHeaders>
               <add name="X-UA-Compatible" value="IE=edge,chrome=1" />
            </customHeaders>
         </httpProtocol>
      </system.webServer>
    </configuration>
    

Microsoft empfiehlt Kantenmodus seit IE11

Wie von bemerkt Lynda (siehe Kommentare), die Kompatibilität ändert sich in IE11 empfiehlt Kantenmodus:

Beginnend mit IE11 ist der Kantenmodus der bevorzugte Dokumentmodus;   Es stellt die höchste Unterstützung für moderne Standards dar, die dem Browser zur Verfügung stehen.

Aber die Position von Microsoft war nicht klar. Ein weiterer MSDN-Seite hat nicht empfohlen Kantenmodus:

Da der Edge-Modus das Öffnen aller Seiten im Standardmodus erzwingt,   unabhängig von der Version von Internet Explorer,   Sie könnten versucht sein, dies für alle mit Internet Explorer angezeigten Seiten zu verwenden.   Tun Sie das nicht, wie die X-UA-Compatible Header wird nur beim Start unterstützt   mit Windows Internet Explorer 8.

Stattdessen empfahl Microsoft die Verwendung <!DOCTYPE html>:

Wenn Sie möchten, dass alle unterstützten Versionen von Internet Explorer geöffnet werden   Ihre Seiten im Standardmodus verwenden die Deklaration des HTML5-Dokumenttyps [...]

Wie Ricardo erklärt (in den Kommentaren unten) jede DOCTYPE (HTML4, XHTML1 ...) kann verwendet werden, um Standards-Modus, nicht nur HTML5 DOCTYPE. Wichtig ist, immer einen DOCTYPE auf der Seite zu haben.

Clara Onager hat sogar in einer älteren Version von Legacy-Dokument-Modi angeben:

Der Edge-Modus ist nur für Testzwecke vorgesehen.   Verwenden Sie es nicht in einer Produktionsumgebung.

Es ist so verwirrend das Usman Y habe gedacht Clara Onager sprach über:

Das [...] Beispiel dient nur zu Illustrationszwecken;   Verwenden Sie es nicht in einer Produktionsumgebung.

<meta http-equiv="X-UA-Compatible" content="IE=7,9,10" >

Nun ... Im Rest dieser Antwort gebe ich weitere Erklärungen, warum ich benutze content="IE=edge,chrome=1" ist eine gute Praxis in der Produktion.


Geschichte

Seit vielen Jahren (2000 bis 2008) IE Marktanteil betrug mehr als 80%. Und IE v6 wurde als ein betrachtet de facto Standard (80% bis 97% Marktanteil in 2003, 2004, 2005 und 2006 nur für IE6, mehr Marktanteil bei allen IE-Versionen).

Wie IE6 nicht respektiert WebstandardsEntwickler hätten um ihre Website mit IE6 zu testen. Diese Situation war großartig für Microsoft (MS), wie Web-Entwickler es mussten Kaufen MS-Produkte (z. B. IE kann nicht ohne Kauf von Windows verwendet werden), und es war profitabler, nicht konform zu bleiben (d. H. Microsoft wollte werden das Standard ohne andere Unternehmen).

Daher waren viele Websites nur IE6-konform, und da IE nicht dem Webstandard entsprach, wurden all diese Websites in standardkonformen Browsern nicht gut gerendert. Noch schlimmer, Viele Websites benötigen nur IE.

Zu diesem Zeitpunkt begann Mozilla jedoch mit der Entwicklung von Firefox, wobei alle Webstandards so weit wie möglich berücksichtigt wurden (andere Browser wurden implementiert, um Seiten so darzustellen, wie sie von IE6 ausgeführt wurden). Da immer mehr Webentwickler die neuen Webstandards nutzen wollten, wurden mehr und mehr Webseiten von Firefox unterstützt als IE.

Als das Teilen des IE-Markts rückläufig war, erkannte MS, dass das Verbleiben von Standard-Inkompatibilitäten keine gute Idee war. Daher hat MS damit begonnen, eine neue IE-Version (IE8 / IE9 / IE10) zu veröffentlichen, die immer mehr den Web-Standards Rechnung trägt.


Das webinkompatible Problem

Das Problem sind jedoch alle Websites, die für IE6 entwickelt wurden: Microsoft konnte keine neuen IE-Versionen veröffentlichen, die mit diesen alten, von IE6 entworfenen Websites nicht kompatibel sind. Anstatt die Internet Explorer-Version abzuleiten, hat MS Entwickler aufgefordert, zusätzliche Daten hinzuzufügen (X-UA-Compatible) auf ihren Seiten.

IE6 wird noch 2016 verwendet

Heutzutage wird IE6 immer noch verwendet (0,7% im Jahr 2016) (4.5% im Januar 2014), und einige Internet-Websites sind immer noch IE6-konform. Einige Intranet-Websites / -Anwendungen werden mit IE6 getestet. Einige Intranet-Websites sind nur auf IE6 zu 100% funktionsfähig. Diese Unternehmen / Abteilungen ziehen es vor, die Migrationskosten zu verschieben: andere Prioritäten, niemand weiß mehr, wie die Website / Anwendung implementiert wurde, der Eigentümer der alten Website / Anwendung ging bankrott ...

China repräsentiert 50% der IE6-Nutzung im Jahr 2013, aber es könnte sich in den nächsten Jahren ändern Chinesische Linux-Distribution wird ausgestrahlt.

Sei zuversichtlich mit deinen Webfähigkeiten

Wenn Sie den Web-Standard beachten (versuchen), können Sie ihn einfach immer verwenden http-equiv="X-UA-Compatible" content="IE=edge,chrome=1". Um die Kompatibilität mit alten Browsern zu gewährleisten, sollten Sie nur die neuesten Webfunktionen verwenden: Verwenden Sie die Teilmenge, die vom ältesten Browser unterstützt wird, den Sie unterstützen möchten. Oder wenn du weiter gehen willst, kannst du Konzepte als annehmen Anmutige Degradierung, Progressive Enhancement und Unaufdringliches JavaScript. (Sie können sich auch freuen, zu lesen Was sollte ein Webentwickler beachten?.)

Das beste Rendering der IE-Version interessiert Sie nicht: Das ist nicht Ihre Aufgabe, da Browser Webstandards entsprechen müssen. Wenn Ihre Website standardkonform ist und daher die neuesten Funktionen verwendet Browser müssen mit Ihrer Website kompatibel sein.

Außerdem, da es viele Kampagnen gibt töten IE6 (IE6 nicht mehr, MS-Kampagne), heutzutage verschwendest du vielleicht Zeit mit IE Testing!

Persönliche IE6-Erfahrung

In den Jahren 2009-2012 arbeitete ich für eine Firma, die IE6 als offizieller einzelner Browser erlaubt. Ich musste nur eine Intranet-Website für IE6 implementieren. Ich entschied mich dafür, den Webstandard zu respektieren, aber die IE6-fähige Teilmenge (HTML / CSS / JS) zu verwenden.

Es war hart, aber als das Unternehmen zu IE8 wechselte, war die Website immer noch gut gerendert, weil ich Firefox und Brandstifter um die Web-Standard-Kompatibilität zu überprüfen;)


312
2018-01-20 13:55



Der Unterschied besteht darin, dass wenn Sie nur das angeben DOCTYPE, IE's Einstellungen der Kompatibilitätsansicht Vorrang haben. Diese Einstellungen erzwingen standardmäßig alle Intranetsites unabhängig von der Kompatibilitätsansicht DOCTYPE. Es gibt auch ein Kontrollkästchen, um die Kompatibilitätsansicht für alle Websites zu verwenden DOCTYPE.

IE Compatibility View Settings dialog

X-UA-Compatible Überschreibt die Einstellungen der Kompatibilitätsansicht, sodass die Seite unabhängig von den Browsereinstellungen im Standardmodus gerendert wird. Dies erzwingt den Standardmodus für:

  • Intranetseiten
  • Externe Webseiten, wenn der Computeradministrator "Alle Websites in der Kompatibilitätsansicht anzeigen" als Standard festgelegt hat - denken Sie an große Unternehmen, Regierungen, Universitäten
  • wenn du unabsichtlich auf der Microsoft-Kompatibilitätsansichtsliste
  • Fälle, in denen Benutzer Ihre Website manuell zur Liste in den Einstellungen der Kompatibilitätsansicht hinzugefügt haben

DOCTYPEalleine kann das nicht; In diesen Fällen landen Sie unabhängig davon in einem der Kompatibilitätsansichtsmodi DOCTYPE.

Wenn sowohl die meta Tag und der HTTP-Header sind angegeben, die meta Tag hat Vorrang.

Diese Antwort basiert auf der Untersuchung der vollständigen Regeln für die Entscheidung über den Dokumentmodus in IE8, IE9, und IE10. Beachten Sie, dass das Betrachten des DOCTYPE ist der allerletzte Fallback für die Entscheidung über den Dokumentenmodus.


52
2018-03-25 19:57



Verwenden Sie dies, um IE zu zwingen, diese lästige Browserkompatibilitätsschaltfläche in der Adressleiste zu verbergen:

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

24
2018-02-13 09:25



Da ich der markierten Antwort keinen Kommentar hinzufügen kann, werde ich das hier einfach posten.

Neben der richtigen Antwort können Sie dies auch validieren lassen. Da dieses Meta-Tag nur für den IE bestimmt ist, müssen Sie nur eine IE-Bedingung hinzufügen.

<!--[if IE]>
    <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
<![endif]-->

Dies ist wie das Hinzufügen einer anderen bedingten IE-Anweisung und funktioniert nur für IE, und andere Browser sind davon nicht betroffen.


22
2018-06-15 14:38



Ich denke, dieses Diagramm von Microsoft erklärt alles. Um dem IE mitzuteilen, wie der Inhalt gerendert wird, muss! DOCTYPE mit einem X-UA-kompatiblen Meta-Tag arbeiten. ! DOCTYPE selbst hat keinen Einfluss auf das Ändern des IE Document Mode.

enter image description here

http://ie.microsoft.com/testdrive/ieblog/2010/Mar/02_HowIE8DeterminesDocumentMode_3.png


12
2017-11-05 19:40



Nur der Vollständigkeit halber müssen Sie es nicht wirklich zu Ihrem HTML hinzufügen (das ist unbekanntes http-equiv in HTML5)

Mach das und schau niemals zurück (erstes Beispiel für Apache, zweite für nginx)

Header set X-UA-Compatible "IE=Edge,chrome=1"

add_header X-UA-Compatible "IE=Edge,chrome=1";

11
2018-02-27 07:11



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

Damit diese Zeile wie erwartet funktioniert, stellen Sie Folgendes sicher:

  1. Es ist das erste Element gleich danach <head>
  2. Nein bedingte Kommentare werden vor dem Meta-Tag verwendet, z.B. G. auf der <html> Element

Ansonsten ignorieren einige IE-Versionen es einfach.

AKTUALISIEREN

Diese beiden Regeln sind vereinfacht, aber sie sind leicht zu merken und zu überprüfen. Obwohl MSDN-Dokumente angeben, dass Sie Titel und andere Meta-Tags davor einfügen können, würde ich dies nicht empfehlen.

Wie funktioniert es mit bedingten Kommentaren?

Interessanter Artikel über die Reihenfolge der Elemente im Kopf. (blogs.msdn.com, für IE)

REFERENZ

Von dem MSDN-Dokumentation:

Das X-UA-Compatible [...] muss in der Kopfzeile der Webseite erscheinen (der HEAD-Bereich)   vor allen anderen Elementen außer dem Titelelement und anderen Metaelementen.


7
2017-09-17 14:03



wenn Sie Ihre Website im selben Netzwerk verwenden wie der Server, zu dem der IE wechseln möchte Kompatibilitätsmodus trotz DOCTYPE.
Hinzufügen meta http-equiv="X-UA-Compatible" content="IE=Edge"  deaktiviert dieses unerwünschte Verhalten.


4
2018-03-22 15:07



Das ist LITERALLY 1 Google-Abfrage entfernt, aber hier geht es:

http://msdn.microsoft.com/en-us/library/jj676915(v=vs.85).aspx

Legacy-Dokument-Modi verstehen

Verwenden Sie den folgenden Wert, um die Webseite im Kantenmodus anzuzeigen   der Modus mit den höchsten Standards, der vom Internet Explorer unterstützt wird, von   Internet Explorer 6 bis IE11.

<meta http-equiv="x-ua-compatible" content="IE=edge"

Hinweis dass dies funktionell der Verwendung des HTML5-Doctype entspricht. Es platziert Internet Explorer in den höchsten unterstützten   Dokumentmodus. Edge Most ist am nützlichsten für regelmäßig gepflegt   Websites, die routinemäßig auf Interoperabilität getestet werden   mehrere Browser, einschließlich Internet Explorer.

HinweisBeginnend mit IE11 wird der Kantenmodus als der bevorzugte Dokumentmodus angesehen. (In früheren Versionen wurde es als experimentell betrachtet.)   Weitere Informationen finden Sie unter Dokumentmodi sind veraltet. Beginnen mit   Windows Internet Explorer 8 verwendeten einige Webentwickler den Kantenmodus   Meta-Element, um die Schaltfläche Kompatibilitätsansicht in der Adressleiste auszublenden.   Ab IE11 ist dies nicht mehr nötig, da die Schaltfläche entfernt wurde   aus der Adressleiste. Da alle Seiten geöffnet werden müssen   Standardmodus, unabhängig von der Version von Internet Explorer   könnte versucht sein, den Kantenmodus für alle Seiten zu verwenden, die mit dem Internet betrachtet werden   Forscher. Tun Sie dies nicht, da der X-UA-kompatible Header nur vorhanden ist   unterstützt ab Internet Explorer 8.

Spitze   Wenn Sie möchten, dass alle unterstützten Versionen von Internet Explorer Ihre Seiten im Standardmodus öffnen, verwenden Sie die Deklaration des HTML5-Dokumenttyps, wie im vorherigen Beispiel gezeigt.

Zu den Suchergebnissen gehört auch:


3
2017-09-24 10:05



Nur ein Satz zu sagen Weisen Sie Internet Explorer an, die neueste Rendering-Engine zu verwenden

<meta http-equiv="x-ua-compatible" content="ie=edge">

2
2017-11-08 18:53