IE8 zwischen Abwärtskompatibilität und Interoperabilität

Internet Explorer 8: Microsofts steiniger Weg zu Web-Standards

20.03.2008 von Wolfgang Sommergut 
Mit der nächsten Version des Internet Explorer (IE) möchte sich Microsoft an allgemein akzeptierte W3C-Empfehlungen halten. Doch der Kurswechsel gestaltet sich schwierig.

Während des Browser-Kriegs zwischen Microsoft und Netscape in den 90er Jahren versuchten beide Anbieter, die Betreiber von Websites davon zu überzeugen, dass sie die Seiten für jeweils ihr Web-Frontend optimieren. Je mehr Online-Angebote die proprietären Features des eigenen Produkts unterstützen, so das Kalkül, umso eher würden es die Anwender der konkurrierenden Software vorziehen.

Nachdem Microsoft den Rivalen aus dem Feld geschlagen hatte und eine Monopolstellung erlangte, versuchte das Unternehmen durch eine eigenwillige Interpretation der Web-Standards die Gestaltung von Websites in seinem Sinne zu beeinflussen. Aufgrund der großen Verbreitung des IE achteten die meisten Web-Entwickler darauf, dass ihre Seiten im Microsoft-Browser korrekt angezeigt werden, auch wenn sie dafür Umgehungslösungen oder Abweichungen vom Standard in Kauf nehmen mussten.

Mit dem Internet Explorer 8 möchte Microsoft seine Politik ändern und zum Musterknaben der Web-Standards werden. Aufgrund der zahlreichen Altbestände an Web-Dokumenten lässt sich ein solcher Schwenk jedoch nicht einfach vollziehen. Zahlreiche der Milliarden HTML-Seiten, die für den IE6 getestet wurden, produzieren in einem standardkonformen Browser zum Teil erhebliche Darstellungsfehler.

Hersteller in der Pflicht

Während konkurrierende Anbieter wie Mozilla oder Opera versuchen, die Mehrzahl dieser IE-optimierten Altlasten einigermaßen passabel anzuzeigen und ansonsten auf die schlechte Code-Qualität der Seiten verweisen können, muss Microsoft abwärtskompatibel bleiben. Der Hersteller steht in der Pflicht, denn schließlich haben sich Autoren und Entwickler über Jahre an den Eigenheiten des IE orientiert.

Die Programmierer in Redmond konnten den Widerspruch zwischen Abwärtskompatibilität und Standardkonformität nicht anders lösen als durch die Integration von zwei Rendering-Engines. Bei der einen handelt es sich um jene des IE7, die andere ist neu und implementiert Cascading Style Sheets (CSS) 2.1.

Allerdings stellt sich nun die schwierige Frage, wann welche Engine zum Einsatz kommen soll. Microsoft gab ursprünglich bekannt, dass sich der IE8 per Voreinstellung so verhalten werde wie sein Vorgänger und nur auf explizite Anweisung des Website-Betreibers in den standardkonformen Modus schalten werde. Diese Ankündigung führte zu zahlreichen Protesten von Web-Entwicklern. Außerdem verschärfte sich zuletzt der Druck der EU-Wettbewerbswächter auf Microsoft, so dass sich das Unternehmen Anfang März dazu durchrang, Web-Seiten im Standardmodus anzuzeigen, sofern der Website-Betreiber oder der Benutzer nicht ausdrücklich auf den Kompatibilitätsmodus umschalteten.

Gefahr für Microsoft

Zu diesem Meinungswechsel dürfte auch beigetragen haben, dass die Marktmacht des IE zunehmend schwindet. Das liegt nicht nur an Firefox, sondern vor allem an den immer zahlreicheren mobilen Endgeräten, die auf das Web zugreifen. Auf den meisten Smartphones läuft kein Browser von Microsoft und immer weniger Website-Betreiber sind daher willens, ihre Angebote auf einen Browser eines Herstellers auf einem Betriebssystem abzustimmen. Wenn andererseits der IE reguläre Web-Seiten nicht korrekt anzeigen kann, weil er Standards eigenwillig interpretiert, dann läuft Microsoft mit der Zeit Gefahr, dass die Anwender auf andere Software wechseln

Microsofts eigene Website "Live Maps" ist derzeit ein Fall für den IE7-Emulationsmodus. Für eine korrekte Anzeige im IE8 bedarf sie größerer Konformität mit W3C-Standards.

.

Umgekehrt ist die jetzt beschlossene Flucht nach vorne nicht weniger riskant. Der für Microsoft einfachste Fall, dass Web-Entwickler ihre bestehenden Seiten mit einem neuen "meta"-Element für den IE7 kennzeichnen, dürfte nicht die Regel werden. Vielmehr existieren Milliarden von Seiten, die nicht mehr verändert werden und die keinen Hinweis auf die bevorzugte Rendering-Engine des IE8 enthalten. Im voreingestellten standardkonformen Modus stellt er viele davon in verstümmelt dar, was die Anwender aber dem Browser und nicht der Website anlasten werden - schließlich sehen die meisten in Firefox, Opera und IE6/7 ordentlich aus.

In solchen Fällen delegiert Microsoft die Entscheidung für die richtige Darstellungskomponente an den Benutzer. Die seit kurzem verfügbare Beta 1 für Entwickler bietet eine Schaltfläche, über die sich in den Emulationsmodus für den IE wechseln lässt. Die aktuelle Ausführung erfordert dann aber einen Neustart des Browsers und ändert die Voreinstellung global für alle geladenen Seiten in sämtlichen Registerkarten und Fenstern. Der Entwickler einer Web-Seite kann die Wahl der Rendering-Engine durch den Endbenutzer mit Hilfe des von Microsoft eingeführten meta-Elements jedoch überstimmen.

Verwirrende Vielfalt an Modi

Der Schritt in Richtung standardkonformer Darstellung von HTML-Seiten, den Microsoft mit dem IE8 geht, ist nicht der erste Versuch, den Sünden der Vergangenheit zu entkommen. Bereits der IE6 interpretierte die DOCTYPE-Deklaration, die sich in jeder standardkonformen Seite finden muss, als Schalter zwischen der Anzeige nach Art des IE 5.5 oder gemäß herrschender Standards. Wenn sie nicht vorhanden ist, dann aktiviert der IE6/7 den so genannten Quirks-Modus. Er ist zuständig für den HTML-Salat aus der Web-Frühzeit und für Machwerke von Entwicklern, die seitdem nichts dazu gelernt haben. Der IE8 unterstützt neben den beiden anderen auch noch diesen Modus.

Bei der Einführung des DOCTYPE-Schalters versäumte es Microsoft indes, den neuen Darstellungsmodus für moderne Seiten konsequent an den bestehenden Standards auszurichten. Verschärfend kam hinzu, dass der Windows-Hersteller aufgrund der errungenen Dominanz im Browser-Markt keine Notwendigkeit zur Weiterentwicklung seines Web-Clients sah und erst 2006 nach fünf Jahren ein Update auf dem Markt brachte

Der IE8 kennt bereits zwei Modi für die Abwärtskompatibilität. Schlimmstenfalls kommt in der nächsten IE-Version einer für HTML5 hinzu.

.

Die damals publizierte Version 7 sollte einen evolutionären Weg in Richtung W3C-Konformität einschlagen und verbesserte die Umsetzung der entsprechenden Empfehlungen. Microsoft ging optimistisch davon aus, dass Entwickler, die sich für eine DOCTYPE-Deklaration entschieden haben, sich weitgehend an die Standards halten würden. Tatsächlich orientierten sie sich vor allem an den Eigenheiten des IE6, so dass viele Seiten in der folgenden Browser-Version nicht korrekt angezeigt wurden. Deshalb entschieden sich die Verantwortlichen in Redmond nun für eine neue Rendering-Engine.

Weitere Sonderwege mit HTML 5?

Microsoft rechtfertigt seinen proprietären Kurs offiziell damit, dass wesentliche Standards wie CSS 2 noch nicht veröffentlicht waren, als der IE6 programmiert wurde. Deshalb habe man die Software auf Basis eines W3C-Entwurfts geschrieben, von der sich die endgültige Empfehlung dann schließlich deutlich unterschied. Tatsächlich kam der IE6 mit Windows XP 2001 auf den Markt, während CSS 2 bereits 1998 verabschiedet wurde.

Selbst wenn es nicht mehr möglich war, den endgültigen Standard im laufenden IE6-Projekt zu berücksichtigen, so hätte Microsoft im Rahmen normaler Update-Intervalle dieses Manko beseitigen können. Aber da die Version 6 fünf Jahre am Markt blieb, wirkte sich die mangelhafte Umsetzung von CSS und des Document Object Model (DOM) nachteilig auf das Web aus.

Die Geschichte des IE6 könnte sich beim IE8 mit HTML 5 wiederholen. Der Browser implementiert bereits die nächste Version der Markup-Sprache, die allerdings erst als Entwurf vorliegt. Microsoft möchte sich nicht darauf festlegen, mit der Auslieferung seines Browsers zu warten, bis HTML5 in einer endgültigen Fassung verabschiedet wird. Daher scheint es nicht unwahrscheinlich, dass der Nachfolger des IE8 einen weiteren Emulationsmodus bieten muss, um die vom Standard abweichende Interpretation des Vorgängers beizubehalten.

Fazit

Microsofts Browser-Politik zeigt, wie nachteilig proprietäre Verzerrungen von Standards durch einen Monopolisten selbst auf ein so großes System wie das Web wirken können. Gleichzeitig muss Microsoft erkennen, wie schwer sich ein solcher Kurs korrigieren lässt, wenn sich der Wind in Richtung offene Standards dreht. Angesichts schwindender Marktanteile des IE riskiert Microsoft mit dem harten Schnitt, den die Version 8 vollzieht, in der Gunst der Anwender weiter zu verlieren. Umgekehrt bot das bisherige Modell auf Dauer ebenfalls keine Perspektive mehr.