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.