IE: Warum verschwindet die Kompatibilitätsansicht bei einigen Websites?

25

IE9 zeigt die Schaltfläche "Kompatibilitätsmodus" für einige Websites an, für andere jedoch nicht. Für die anderen kann ich es weiterhin aktivieren, indem ich es über Extras> Einstellungen für die Kompatibilitätsansicht hinzufüge. Dann verhält es sich wie erwartet.

Bildbeschreibung hier eingeben

Warum wird diese Schaltfläche nicht immer angezeigt? Gibt es eine Möglichkeit, das zu überschreiben?

Tsilb
quelle

Antworten:

26

Das Vorhandensein der Schaltfläche hängt von dieser Art von Meta-Tag ab:

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

Dokumentenkompatibilitätsmodi

In neueren Versionen von Internet Explorer können diese Modi die von Webseiten unterstützten Funktionen und die Art und Weise steuern, wie Seiten angezeigt werden.

  • IE=EmulateIE8 Der Modus weist Internet Explorer an, mithilfe der Direktive zu bestimmen, wie Inhalte gerendert werden sollen. Direktiven im Standardmodus werden im Internet Explorer 8-Standardmodus und Direktiven im Quirks-Modus im IE5-Modus angezeigt. Im Gegensatz zum IE8-Modus respektiert der IE8-Emulationsmodus die Direktive.

  • IE=EmulateIE7Weist Internet Explorer an, mithilfe der Direktive zu bestimmen, wie Inhalte gerendert werden sollen. Direktiven im Standardmodus werden im Internet Explorer 7-Standardmodus und Direktiven im Quirks-Modus im IE5-Modus angezeigt. Im Gegensatz zum IE7-Modus respektiert der IE7-Emulationsmodus die Direktive. Für viele Websites ist dies der bevorzugte Kompatibilitätsmodus:

  • IE=5 Rendert Inhalte so, als würden sie im Mackenmodus von Internet Explorer 7 angezeigt, der der Darstellung von Inhalten in Internet Explorer 5 sehr ähnlich ist.

  • IE=7 Rendert Inhalte so, als würden sie im Standardmodus von Internet Explorer 7 angezeigt, unabhängig davon, ob die Seite eine Direktive enthält oder nicht.

  • IE=8 unterstützt viele etablierte Standards, einschließlich der W3C Cascading Style Sheets Level 2.1-Spezifikation und der W3C Selectors API; Es bietet auch eingeschränkte Unterstützung für die W3C Cascading Style Sheets Level 3-Spezifikation (Working Draft) und andere neu entstehende Standards.

  • IE=9 Bietet die bestmögliche Unterstützung für etablierte und aufstrebende Industriestandards, einschließlich HTML5 (Working Draft), W3C Cascading Style Sheets Level 3-Spezifikation (Working Draft), Scalable Vector Graphics (SVG) 1.0-Spezifikation und andere.

  • IE=Edge Weist Internet Explorer an, Inhalte im höchsten verfügbaren Modus anzuzeigen. Bei Internet Explorer 8 entspricht dies dem IE8-Modus.

Wenn eine (hypothetische) zukünftige Version von Internet Explorer einen höheren Kompatibilitätsmodus unterstützt, werden im Edge-Modus festgelegte Seiten im höchsten von dieser Version unterstützten Modus angezeigt. Dieselben Seiten werden im IE8-Modus angezeigt, wenn sie mit Internet Explorer 8 angezeigt werden. und im IE9-Modus, wenn mit Internet Explorer 9 angezeigt.

Zusammenfassung

IE wird nicht die Schaltfläche Kompatibilitätsansicht darstellen , wenn entweder:

  • Der Inhalt des Meta-Tags entspricht der von Ihnen verwendeten IE-Version. oder
  • Der Inhalt des Meta-Tags wird auf festgelegt IE=edge.

Referenz

Dokumentenkompatibilität definieren (Internet Explorer)

SgtOJ
quelle
2
Arjan,
8

Abgesehen von dem <meta>Tag, wie in Brians Antwort erklärt :

Wenn dies für lokale (Intranet-) Sites geschieht: Es scheint, dass die Standardeinstellungen Intranet-Sites immer im Kompatibilitätsmodus ausführen und, noch schlimmer, die Schaltfläche überhaupt nicht anzeigen.

Wenn Sie die Einstellung "Intranetsites in der Kompatibilitätsansicht anzeigen" deaktivieren, wird die Schaltfläche auch für lokale Sites angezeigt, sodass Sie sie deaktivieren können. Beachten Sie, dass die Einstellungen für die Kompatibilitätsansicht nur im Menü "Vollständig" aufgeführt sind (drücken Sie Alt-T), nicht im Symbol für die Kurzschrift:

Alt-Text Alt-Text Alt-Text

Alternativ können Sie dafür sorgen , dass der Internet Explorer Intranetsites nicht mehr erkennt .

Arjan
quelle
2
Das liegt daran, dass viele Intranetsites und interne Webanwendungen von Unternehmen auf IE6 programmiert waren. Microsoft wusste, dass die Mehrheit der IE6-Benutzer Mitarbeiter waren, die gezwungen waren, IE6 zu verwenden. Wenn alle Websites standardmäßig im Kompatibilitätsmodus ausgeführt werden, ist der Übergang zu einer Update-Version des IE reibungsloser, aber nicht reibungslos. Wenn viele Unternehmen wie [herausgeschnitten] wären, wäre dies der Fall. Sie müssen daran denken, dass Wechselgeld Geld kostet. Unternehmen kümmern sich nur um Geld. Bearbeiten Sie den Firmennamen, um sie zu schützen . Dieses Unternehmen wechselte nicht einmal zu einer Update-Version, bis der Google / China-Hack zustande kam.
27.
@ Brian, ich denke du hast recht. Schade allerdings: Eine viel bessere Lösung wäre gewesen, es standardmäßig zu aktivieren . Diese blöde IE-Einstellung aktiviert nicht nur den Kompatibilitätsmodus, sondern blendet auch die Kompatibilitätsschaltfläche vollständig aus.
Arjan
Wow. Ich wusste nie davon. Hat mich den ganzen Tag verrückt gemacht, bis ich auf deinen Posten gestoßen bin. Vielen Dank!
System Down
Was passiert, wenn Sie den Kompatibilitätsmodus nicht möchten, aber die Option "Intranetsites in der Kompatibilitätsansicht anzeigen" aktiviert ist? Überschreibt dies das <meta http-equiv="X-UA-Compatible" content="IE=edge">Tag? Oder überschreibt das Meta-Tag das Kontrollkästchen für die Kompatibilitätseinstellung?
Ben
@Ben, es ist schon eine Weile her, dass ich IE verwenden musste, aber ich denke, dass das Aktivieren von "Anzeigen von Intranetsites in der Kompatibilitätsansicht" in der Tat den Vorrang haben würde <meta http-equiv="X-UA-Compatible" content="IE=edge">. Ich bin mir nicht 100% sicher, aber ich erinnere mich sehr genervt darüber, dass ich nicht verstehe, warum Seiten schlecht angezeigt wurden. Daher kann ich nur davon ausgehen, dass diese Seiten damals das Tag enthielten . Aber vielleicht wusste ich damals nichts von diesem Tag ...
Arjan
1

In diesem umfassenden MSDN-Artikel zur Kompatibilitätsansicht werden in der folgenden Liste verschiedene Möglichkeiten zum Aktivieren der Kompatibilitätsansicht beschrieben:

  • Sie klicken auf die Schaltfläche Kompatibilitätsansicht in der Adressleiste, wenn Sie eine Webseite anzeigen. Wenn diese Schaltfläche angezeigt wird, befindet sie sich links neben der Schaltfläche "Aktualisieren" und enthält ein Bild eines beschädigten Blattes Papier. Dadurch wird die Kompatibilitätsansicht für alle Dokumente in der Domäne der angezeigten Website aktiviert.
  • Die Einstellung "Alle Websites im Kompatibilitätsmodus anzeigen" in den Einstellungen für die Kompatibilitätsansicht ist aktiviert.
  • Die Einstellung "Automatische Wiederherstellung nach Seitenlayoutfehlern mit Kompatibilitätsansicht" ist aktiviert und eine Webseite reagiert nicht mehr oder der Browser stürzt ab. In diesem Fall öffnet Internet Explorer die Seite in der Kompatibilitätsansicht, nachdem das Problem behoben wurde.
  • Gruppenrichtlinien, die Sites identifizieren, die in der Kompatibilitätsansicht geöffnet werden sollen, werden vom Administrator Ihres Computers aktiviert.
  • Sie haben mit den F12-Entwicklertools den Browsermodus geändert, um Internet Explorer als eine frühere Version des Browsers zu identifizieren.
  • Die Liste der Kompatibilitätsansichten ist aktiviert und definiert eine Liste von Websites, die automatisch in der Kompatibilitätsansicht angezeigt werden.

Um die Kompatibilitätsansicht zu deaktivieren / zu überschreiben, müssen Sie die oben vorgeschlagenen Aktionen in umgekehrter Reihenfolge ausführen.

Die Liste der Kompatibilitätsansichten ist eine XML-Datei, die von Microsoft verwaltet wird.

Wenn Sie Ihre Site aus der Liste der Kompatibilitätsansichten entfernen möchten (oder die Entfernung Ihrer Site aus der Liste ablehnen möchten), muss der allgemeine Site-Eigentümer sicherstellen, dass die Domain-Site in der Liste der Kompatibilitätsansichten angezeigt wird. Wenn dies der Fall ist, senden Sie eine E-Mail an [email protected], die die folgenden Informationen enthält:

Name des Inhabers Unternehmensbezeichnung Firmenname Straße E-Mail-Adresse Telefonnummer Website-Adresse

Microsoft überprüft die bereitgestellten Informationen und entfernt Ihre Website beim nächsten geplanten Update aus der Liste der Kompatibilitätsansichten.

mvark
quelle
0

Ich habe gerade eine Weile versucht, festzustellen, warum das Symbol für die Kompatibilitätsansicht in einer der Domains meines Unternehmens nicht verfügbar ist, obwohl es anscheinend keinem entspricht der in den anderen Antworten auf diese Frage beschriebenen Bedingungen erfüllt.

Die Erklärung ist, dass "X-UA-kompatibel" kein Meta-Tag sein muss. Es kann auch als HTTP-Header angegeben werden (nicht Teil des HTML-Inhalts). Dies ist in der Domäne der Fall, mit der ich Probleme habe.

Diese MS-Seite enthält weitere Details, von denen viele in der Antwort von SgtOJ aufgeführt sind: http://msdn.microsoft.com/en-us/library/jj676915(v=vs.85).aspx

Scott Leis
quelle