IE 8: Der steinige Weg zu Web-Standards

19.03.2008
Mit der nächsten Version des Browsers Internet Explorer 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, die Seiten für jeweils ihr Web-Frontend zu optimieren. Je mehr Online-Angebote die proprietären Features des eigenen Produkts unterstützen, so das Kalkül, umso eher würden die Anwender anbeißen.

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 sinken. Umgekehrt bot das bisherige Modell auf Dauer ebenfalls keine Perspektive mehr.

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 jetzt seine Politik ändern und zum Musterknaben der Web-Standards werden. Aufgrund der zahlreichen Altbestände an Web-Dokumenten fällt dieser Schwenk jedoch alles andere als leicht. Zahlreiche der Milliarden HTML-Seiten, die für den IE 6 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 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 hinweg 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 IE 7, 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 IE 8 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-Wettbewerbshüter 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 umschalten.

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 nur einen Browser eines einzigen Herstellers auf einem einzigen 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.

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 IE 7 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 IE enthalten. Im voreingestellten Standardmodus werden viele davon verstümmelt angezeigt, was die Anwender aber dem Browser und nicht der Website anlasten werden - schließlich sehen die meisten mit Firefox, Opera und IE 6/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 Implementierung 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 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 IE 8 geht, ist nicht der erste Versuch, den Sünden der Vergangenheit zu entkommen. Bereits der IE 6 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äß herrschenden Standards. Wenn sie nicht vorhanden ist, dann aktiviert der IE 6/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 dazugelernt haben. Der IE 8 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 seiner Web-Clients sah und erst 2006 nach fünf Jahren ein Update auf den Markt brachte.

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 IE 6, 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 IE 6 programmiert wurde. Deshalb habe man die Software auf Basis eines W3C-Entwurfs geschrieben, von der sich die endgültige Empfehlung dann schließlich deutlich unterschied. Tatsächlich kam der IE 6 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 IE-6-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 IE 6 könnte sich beim IE 8 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 HTML 5 in einer endgültigen Fassung verabschiedet wird. Daher scheint es nicht unwahrscheinlich, dass der Nachfolger des IE 8 einen weiteren Emulationsmodus bieten muss, um die vom Standard abweichende Interpretation des Vorgängers beizubehalten.