Kann jemand bitte den Unterschied zwischen IE8- Browsermodus und Dokumentmodus in einfachen Worten erklären ?
- Was bewirkt, dass sich der Browsermodus ändert?
Was bewirkt, dass sich der Dokumentmodus ändert?
Wenn ein Benutzer die Modi über Entwicklertools ändert, bleibt die Änderung auch dann bestehen, wenn die Seite aktualisiert wird?
Ich frage dies, weil wir hier einige IE8-Tests durchführen und verschiedene Leute unterschiedliche Kombinationen der Modi haben, und ich möchte versuchen herauszufinden, wie dies geschieht.
Antworten:
Aus diesem Artikel im IE8-Blog mit dem Titel Wie IE8 den Dokumentmodus bestimmt
Daraus erhalten wir die folgenden Antworten auf Ihre Fragen:
Frage: Was ist in einfachen Worten der Unterschied zwischen Browsermodus und Dokumentmodus?
A. Der Browsermodus wird in den Entwicklertools festgelegt, um unterschiedliche Verhaltensweisen der IE-Browserversion zu emulieren, während der Dokumentmodus auf der Webseite definiert ist, um den IE anzuweisen, die Site aus Kompatibilitätsgründen anders zu rendern.
F. Was bewirkt, dass sich der Browsermodus ändert?
A. Der Benutzer ändert den Browsermodus in den Entwicklertools.
F. Was bewirkt, dass sich der Dokumentmodus ändert?
A. Der vom Webentwickler festgelegte Doctype und das X-UA-kompatible Meta-Tag und der Header.
F. Wenn ein Benutzer die Modi über Entwicklertools ändert, bleibt die Änderung auch dann bestehen, wenn die Seite aktualisiert wird?
A. Der Browsermodus bleibt erhalten, aber wenn Sie den Doctype und X-UA-kompatibel ändern, kehren sie zu den auf der Seite definierten Werten zurück.
UPDATE: Wie Adrien Be weiter unten ausführt, bietet IE9 + die Möglichkeit, den Dokumentmodus in den Entwicklertools über eine Einstellung zu ändern, die bei der Aktualisierung beibehalten wird.
quelle
Sehen Sie Ihre Antwort auf dieser Seite .
Die
documentMode
Eigenschaft gibt den Modus zurück, den der Browser zum Rendern des aktuellen Dokuments verwendet.IE8 kann eine Seite in verschiedenen Modi rendern, abhängig vom
!DOCTYPE
Vorhandensein bestimmter HTML-Elemente.Diese Eigenschaft gibt einen der folgenden Werte zurück:
Hinweis: Wenn nein
!DOCTYPE
angegeben ist, rendert IE8 die Seite im IE5-Modus!quelle
Browsermodus : Gibt den Benutzeragenten an, der vom Browser an den Webserver gesendet wird. Renderunterschiede können auftreten, wenn Ihr JavaScript- oder Back-End-Code basierend auf der Zeichenfolge des Benutzeragenten unterschiedlich gerendert wird. Beispielsweise wird möglicherweise JavaScript angezeigt, das dies überprüft
navigator.userAgent
. (Mozilla / 5.0 (kompatibel; MSIE 8.0 ...) Dieser Wert wird auch zum Verarbeiten von bedingten Kommentaren verwendet ([wenn IE 9], [wenn IE IE 8] usw.). Das Emulationstooling in IE 11 funktioniert nicht haben einen Browsermodus. Stattdessen gibt es ein Dropdown-Menü für Benutzeragenten.Dokumentmodus : Gibt die Rendering-Engine an, mit der das Markup verarbeitet wird. Hier treten normalerweise Rendering-Probleme und Browser-Inkompatibilitäten auf. Das ursprüngliche Ziel (zum Guten oder Schlechten) war, dass Websitebesitzer über ein Meta-Tag einen Dokumentmodus für ihre Website auswählen konnten. In IE 11 sind die Emulationstools weniger verwirrend.
Testen : Wenn Sie einen alten IE8-Browser emulieren möchten, sollten Sie sowohl den Browsermodus als auch den Dokumentmodus ändern . Die Emulation ist nicht perfekt, daher ist es eine gründlichere Option, kostenlose Test-VMs von Microsoft herunterzuladen, auf denen Sie mit einer * echten "Version von IE 8, 9 usw. testen können.
Was bewirkt, dass sich diese Werte ändern?
Der Browsermodus ändert sich nicht. (Es sei denn, Sie ändern es in den Dev-Tools.) Es wird festgelegt, bevor die Anforderung an den Webserver gesendet wird.
Der Dokumentmodus kann sich basierend auf der Antwort des Webservers ändern. Sie kann über einen X-UA-kompatiblen HTTP-Antwortheader, den Dokumenttyp, Meta-Tags, Intranetsites, Markup-Probleme usw. geändert werden.
quelle
Oben links in den IE-Entwicklungstools befindet sich eine kleine Schaltfläche -> Emulation (Registerkarte) mit der Aufschrift "Emulationseinstellungen beibehalten".
siehe das :
" Persistenz und Zurücksetzen der Einstellungen Dem Emulationstool wird ein Symbol für die Einstellungen für die persistierte Emulation hinzugefügt. Dadurch werden Ihre aktuellen Emulationseinstellungen beibehalten, bis sie speziell deaktiviert werden. So können Sie arbeiten, den Browser schließen und Ihre Emulationseinstellungen beibehalten. Rechts davon ein Symbol zum Zurücksetzen der Emulationseinstellungen, mit dem das Tool schnell auf die Standardwerte zurückgesetzt wird. "
quelle