Freitag,
06. März 2009

Was habt ihr am 27. August 2001 eigentlich gemacht? Ich weiß es nicht mehr. Aber vermutlich haben sich damals viele Leute über die Veröffentlichung des Internet Explorer 6 gefreut, da es gegenüber der 5.x Version einen gewaltiger Schritt nach vorn war. Die Bauchschmerzen kamen erst später und heute fühlt sich die Erinnerung an dieses Ereignis doch ziemlich unsexy an. Fakt ist, der Internet Explorer 6 will einfach nicht von der Bildfläche verschwinden und ist in den Augen vieler mittlerweile die Innovationsbremse Nr. 1, wenn es um den Einsatz moderner Webtechnologien geht. Denn aufgrund des heute noch weltweiten Marktanteils von aktuell 18,5 Prozent (Stand Januar 2009) ist das Ignorieren dieses Dinosauriers irgendwie auch nicht drin – das Dilemma ist perfekt.

In regelmäßigen Abständen rufen deshalb seit ein paar Jahren Webentwickler zur aktiven Sterbehilfe für den Internet Explorer 6 auf, aktuelles Beispiel: Skandinavien. Die norwegische Webseite Finn.no ging kürzlich in die Offensive und rät ihren Besuchern aktiv und unverblümt zum Umstieg. Ähnliches wünscht sich das Projekt IE Death March – in beiden Fällen gefeiert von einer Vielzahl an Webentwicklern.

Das Dilemma wird noch deutlicher, denn wie Ingo Chao im XING Blog zielsicher den Finger in die Wunde legt, waren es die Webentwickler selbst, die mit ihrer erfolgreichen Suche nach Workarounds und CSS-Hacks sowie deren Sammlung und Veröffentlichung erst dafür gesorgt haben, dass sich dieser Browser bis heute über Wasser halten konnte.

Isn’t it ironic that we, as web developers, have made this nonsense possible? It is our documentations and analyses of browser bugs. We, not the vendors, did that. We found workarounds for today’s complex pages in IE, or, if this failed, we reverse engineered its bugs for standards-compliant browsers so they act like IE. So we made this trap for ourselves, conscious of the consequences or not.

Ebenso Recht hat natürlich auch Jens Grochtdreis mit seinem Hinweis, dass die Webentwickler seinerzeit gar keine andere Wahl hatten, als sich mit dem IE6 zu arrangieren. Von Microsoft war aufgrund fehlender Konkurrenz keine Aktivität zu erwarten.

Fakt ist aber auch: Die Bugs des IE6 sind bereits seit einem halben Jahrzehnt im Netz bestens dokumentiert, einschließlich passender Fixes und Workarounds. Und der überwiegende Teil lässt sich auf relativ einfache Art und Weise fixen. Zu einem offensichtlichen Problem wurde diese Situation erst mit dem rasanten Aufstieg des Firefox und der Wiederaufnahme der Entwicklungsarbeit bei Microsoft, die Ende 2007 in der Veröffentlichung des IE7 mündete, ohne jedoch den IE6 zu ersetzen. Seither ist richtig Bewegung im Browsermarkt, genauso wie in der Entwicklung neuer Webstandards (CSS3, HTML 5 samt Canvas, WAI-ARIA, RDFa, SVG).

Was war zu erst da, die Henne oder das Ei?

Also, wie kommen wir raus aus diesem Dilemma? Meinungen dazu gibt es viele, Antworten aber leider nicht. Denn wenn sich das Problem Internet Explorer 6 mit Unterschriftenaktionen, in Webseiten eingeblendeten Textboxen mit Wechselempfehlungen oder gar der Verweigerung von CSS-Styles für den IE6 tatsächlich lösen ließe, dann hätte das schon 2007 funktionieren müssen. Dummerweise haben wir jetzt 2009 und sind keinen Schritt weiter. Zwar ist der Marktanteil des IE6 bereits stark gesunken und wird weiter fallen (vermutlich aber langsamer), doch es will niemand mehr so lange warten, bis er von selbst in der Bedeutungslosigkeit untergeht.

Die große Chance, die Herzen aller Webentwickler dieser Welt zu rühren, hatte Microsoft erstmals beim Release des Internet Explorer 7 - und ließ sie ungenutzt. Man unterstützte nur Windows XP, ließ ältere Betriebssysteme außen vor und machte die Installation nicht zur Pflicht – aus Angst vor massiven Problemen mit alten Webseiten sowie Unternehmenssoftware vieler großer Firmen, die speziell auf den IE6 abgestimmt waren (und es vermutlich vielerorts auch heute noch sind). Den zweiten Matchball hat Mircosoft mit dem IE8 gerade in der Hand. Doch auch jetzt sieht es nicht so aus, als bringe Microsoft den notwendigen Mut auf, einen klaren Schnitt zu machen.

So motivierend oder eindringlich öffentliche Kampagnen auch sein mögen – sie bleiben lokale Strohfeuer. Nur Microsoft erreicht weltweit die kritische Masse und könnte mit einem Zwangsupdate auf den Internet Explorer 8 in Verbindung mit einer konsequenten Ausrichtung auf Webstandards (ohne Kompatibitätsmodus und IE7 Emulation) für unmittelbare und nachhaltige Reduktion der IE6-Installationen sorgen, so dass wir das Problem nicht weiter aussitzen müssen. Doch das wird nicht geschehen und so werden die bestehenden IE6-Installationen nur gemächlich weniger werden.

Was also tun?

Der Internet Explorer 6 ist seit nunmehr 8 Jahren ein fester Bestandteil des Internets und hat die Weiterentwicklung der Standards nicht behindert. Genauso wenig darf seine Anwesenheit den Einsatz neuer Techniken behindern. Genau das tut er jedoch – vorrangig in den Köpfen vieler Webentwickler.

Aufklärung!

Jens Grochtdreis wird nicht müde, immer wieder auf die einzigartigen Stärken des Mediums Internet zu verweisen ...

Der Kernpunkt zur Lösung des Problems ist ein anderer. Wir müssen uns von der irrigen Annahme verabschieden, wir könnten Pixelperfektion in allen Browsern garantieren. Wir müssen uns von der Annahme verabschieden, Pixelperfektion sei ein sinnvoller Wert. Vor allem Kunden und Grafiker müssen in meinen Augen lernen, dass Pixelperfektion nur im Bildbearbeitungsprogramm sinnvoll ist, aber nicht in unterschiedlichen Browsern.

... und weiter ...

Alle, die professionell für das Internet arbeiten, sollten wirklich begreifen, dass das Geniale des Internet seine Flexibilität ist.

...

Wenn diese Flexibilität aber die große Stärke des Internet ist, warum versuchen dann so viele Beteiligte, sie einzuschränken?

Das Verständnis für die Einzigartigkeit des Mediums muss erst einmal in die Köpfe der Webentwickler und Grafiker und zur eigenen Überzeugung reifen. Ist es da angekommen, wird es auch einfacher, Kunden besser zu beraten. Es geht um das Grundverständnis, dass kein Webdesigner oder Grafiker die Kontrolle über die Darstellung seiner Webseite im Browser des Nutzers hat.

Doch halt: So wichtig Aufklärung über die Vorteile von Webstandards und die Nachteile eines veralteten Browsers für und unter Webentwicklern auch ist, so sehr kann sie bei Kunden und Usern aufdringlich und bevormundend herüberkommen. Ein erhobener Zeigefinger hat meiner Meinung nach wenig Überzeugungskraft, denn gleichzeitig wissen wir (und auch die User), das der IE6 auch mit aktuellen CSS-Layouts durchaus klarkommt. Zigtausende Seiten beweisen es. Wo liegt also für den User der Nutzen eines solchen Wechsels? Um uns Webdesigner zufrieden zu stellen? Wohl kaum.

Viel einfacher lassen sich User zu einem Browserwechsel bewegen, wenn der Einsatz neuer Webtechniken (ohne dass sie sich selbst dessen bewusst sein müssen) zu einem besseren Nutzererlebnis führt. Jüngstes Beispiel: Die Vorstellung von Bespin, Mozillas Texteditor auf Canvas Basis. Eine derartige Applikation verlangt für die Anwendung selbstverständlich einen aktuellen Browser. Und niemand erwartet ernsthaft, den aktuellen Stand der Technik auf einem technisch veralteten Browser zum Laufen zu bekommen. Die Applikation ist das Zugpferd, in dessen Windschatten sich Anwender gern einen neuen Browser installieren. Und genau dann ist die konsequente Anwendung aktueller und neuer Standards legitim und zugleich förderlich für die Weiterentwicklung des Webs. Genau solche Projekte brauchen wir – und sie werden kommen, ohne Zweifel.

Nutzt Frameworks!

Ob ihr es hören wollt oder nicht: Nutzt Layout-Frameworks!  YAML, YUI grids, 960gs oder Blueprint CSS befreien vom permanenten Kampf mit Browserinkompatibilitäten und niemand muss heute das Rad ein zweites Mal erfinden. Natürlich geht auch dann nicht jedes Projekt völlig ohne Stress mit dem Internet Explorer über die Bühne. Doch die Probleme sind zumindest mit YAML so gering und überschaubar,  dass das Aussitzen eines langsamen Aussterbens des IE6 kaum einen YAML-Anwender ernsthaft Sorgen bereitet. Die weiteren genannten Frameworks mögen geringere Fähigkeiten im Bereich der Bugprävention haben, für die jeweilige Kernfunktionalität ist die Sicherheit aber dennoch gegeben und führt somit in jedem Fall nachhaltig zu kürzeren Entwicklungszeiten.

Zweifelsohne notwendige Einarbeitungszeiten sind als Argument gegen CSS Frameworks eher schwach bis untauglich, denn diesem einmaligen Aufwand steht eine nachhaltige Zeiteinsparung bei korrekter Anwendung gegenüber. Und mal ehrlich: Weiterbildung und das ständige Erlernen neuer Techniken sind Grundlagen professioneller Arbeit, denn das Web erfindet sich alle paar Jahre neu.

Es zeugt jedoch nicht von Professionalität, öffentlich lautstark auf den verbuggten Internet Explorer 6 zu schimpfen und gleichzeitig   zeitsparende Weiterentwicklungen im Bereich CSS zu ignorieren. Denn gleichermaßen gilt: Seit vielen Jahren bereits gibt es für fast ausnahmslos alle CSS-Probleme des Internet Explorer 6 sinnvolle CSS-Hacks oder Workarounds. Weiterhin existieren zahlreiche Methoden, diese Anpassungen so zu integrieren, dass sie die Pflege und Weiterentwicklung eines Layouts nicht behindern. Wer sich der rein manuellen Layoutentwicklung aus eigenem sportlichem Ehrgeiz stellt und Handkodierung bevorzugt, der kommt mit Ausdauer und fundiertem Fachwissen mit Sicherheit ebenso zum Ziel. Aber schon heute würde er das Ziel nicht mehr als erster überqueren. "Working in the now" ... wer mir nicht glauben mag, der lasse sich von Chris Heilmann überzeugen.

In jedem Fall kann ein Kunde erwarten, dass wir als professionelle Webentwickler mit dem Internet Explorer 6 umzugehen wissen und er darf ebenfalls erwarten, dass heute die Unterstützung des IE6 bei der Erstellung eines Screenlayouts nicht zu spürbaren Mehrkosten führt, denn was mit Framework-Einsatz machbar ist, sollte auch bei professioneller Handkodierung ohne Extrakosten realisierbar sein.

Anders sieht der Fall für Einsteiger und Hobbybastler aus. Hier kann ich die Flüche auf den IE6 durchaus verstehen, denn er macht das Erlernen von HTML & CSS unnötig schwer durch seinen zahlreichen Darstellungsfehler. Und es wahrlich nicht einfach, die Vorteile von Webstandards lieben zu lernen, wenn der lokale Testbrowser des Weltmarktführers sich nicht an diese hält.

Funktionale- anstatt visueller Anpassungen

Wenn es darum geht, sich die Arbeit mit dem Internet Explorer 6 zu erleichtern, ist es doch in den seltensten Fällen legitim, ihn ganz außen vor zu lassen. Auf privaten Webseiten ist es sicherlich vorstellbar, im öffentlichen und geschäftlichen Leben ist ein Ausschluss des Internet Explorers jedoch heute und in naher Zukunft ein absolutes Unding. Demzufolge kann es nur in kleinen Schritten vorwärts gehen. Auch hierzu finde ich Ingo Chaos Ansatz ausgesprochen sinnvolll ...

The web is about information, networking, and interaction. This means,  a page simply has to work. As I see it, disgraceful degradation would abandon the attitude of everything-is-possible. Functional hacking should supersede the obsolete presentational hacking now, or we keep being trapped in a costly, mutual mistake of the web developers and the web consumers.

Eine Webseite muss in erster Linie benutzbar sein und ihre Aufgabe erfüllen. Die überwiegende Mehrheit der IE6-Nutzer surft eben nicht parallel mit Safari oder Firefox und wird sich deshalb auch an visuellen Abweichungen/Einschränkungen des Layouts nicht stören. Deshalb sollte man die Eingriffe auf notwendige funktionelle Anpassungen beschränken und nicht versuchen, per halbtransparenten Screenshot-Vergleich visuelle Deckungsgleichheit zwischen Browsern zu erzielen, zwischen denen gleich mehrere Evolutionsstufen liegen. Ob via Progressive Enhancement, Graceful Degradation oder doch ein härterer Schnitt, wird immer projektabhängig zu entscheiden sein. Es sollte jedoch jedem Kunden im Beratungsgespräch überzeugend klarzumachen sein, dass Pixelperfektion in dieser Situation nicht das erstrebenswerte Ziel sein kann. Genauso wie ein 8 Jahre alter Röhrenfernseher nicht mehr die visuelle Brillianz aktueller Plasma-TVs erreicht.

Umgang mit neuen Webtechnologien

Auch wenn es vermutlich noch Jahre dauern wird, bis alle Module von CSS3 Recommendation Status erhalten, so unterstützen dennoch bereits jetzt Firefox, Safari und Opera einige interessante neue Eigenschaften:

  • erweiterte Gestaltungsmöglichkeiten für Rahmen (Border-Radius, Border-Image)
  • Mehrfache Hintergrundgrafiken
  • Nachladbare Schriften mit @font-face
  • Schatteneffekte (Box- und Text-Shadow)
  • Alphatransparente RGB-Kanäle (RGBa)
  • Verläufe (Gradients)
  • Animation und Übergänge (Transitions)
  • usw.

Auch für die modernen Browser ist das momentan die Speerspitze, denn selbst Firefox 3 und Opera 9 unterstützen momentan noch nicht alle diese Features (beim Safari 4 bin ich mich mir nicht ganz sicher) und so wird einen Teil dieser Eigenschaften momentan noch sehr zurückhaltend einsetzen. Runde Ecken via border-radius können sie hingegen alle und es ist ein hervorragendes Beispiel, wie CSS3 die zahllosen, teils recht markupintensiven Rounded-Corner Lösungen obsolete macht.

Keine dieser Eigenschaften wird der IE6 jemals verstehen, der Internet Explorer 8 übrigens auch nicht – sollen wir deshalb sie deshalb einfach links liegen lassen? Ganz klar, Nein. Dennoch sollte klar sein, dass wir uns hier am anderen Ende des Entwicklungszweiges befinden, am vorderen. Demzufolge ist momentan nur die neueste Browsergeneration (z.T. sogar nur Betaversionen) überhaupt dazu in der Lage,fehlerfrei mit diesen neuen Möglichkeiten darzustellen. Der Einsatz muss daher immer mit Bedacht erfolgen.

Erst vor einem Monat veröffentlichte Peter Kröner eine ausführliche Zusammenstellung der aktuellen Browserunterstützung von HTML 5, verbunden mit einer Einschätzung für eine Nutzung schon heute. Wie bei CSS3 gilt: Wir befinden uns an der Spitze dessen, was gute aktuelle Browser leisten können. Aus meiner Sicht macht es deshalb heute noch keinen Sinn, HTML 5 als Grundlage für die Layoutentwicklung zu nutzen. Viel zu lückenhaft ist da noch die Browserunterstützung. Dennoch lassen sich, wie Peter Kröner zeigt, die neuen Formulartypen durchaus bereits verwenden und können Nutzern moderner Browser bereits heute das Leben erleichtern. Doch auch das ist momentan nur Profis zu empfehlen, denn ein Formularfeld vom Typ "date" liefert nur im Opera 9 gesichert auch einen validierenden Datumsstring, in anderen Browsern muss diese Validierung auch weiterhin beispielsweise per JavaScript erfolgen. Daher sind Fallback-Lösungen zwingend gefragt.

Fazit

Der Internet Explorer 6 wird nicht über Nacht verschwinden, das sollte jedem klar sein. Das ist auch gar nicht so wichtig, denn die Probleme sind nicht neu und die Lösungen seit Jahren bekannt. Die Ursache für die plötzliche Aufruhr muss ihren Ursprung also woanders haben. Nämlich in der Tatsache, dass wir mehr und mehr in Konflikte kommen mit aktuellen Technologien, die wir nicht einsetzen können, solange wir uns Pixelperfektion und identische Optik in allen Browsern (seien sie auch noch so alt) selbst verordnen. Solange wir dieses Dogma nicht aufgeben, befinden wir uns in einer Endlosschleife, passend zum Titel dieses Essays.

Gerade im Bezug auf den Einsatz neuer Technologien stellt sich letztlich nämlich die Frage, ob der Internet Explorer 6 hier wirklich die einzige Bremse ist? Auch die Versionen 7 und 8 des Internet Explorers hängen dem Stand der Technik um Jahre hinterher, werden uns aber noch weitaus länger begleiten als der IE6. Die eigentliche Frage müsste daher lauten: Wie gehen wir heute und in Zukunft mit einem Internet Explorer um, der in jeder Version dem aktuellen Stand der Technik um zwei bis drei Jahre hinterher hinkt? Denn machen wir uns nichts vor. Wenn wir diese Frage keine Antwort finden, reiben wir uns in zwei Jahren die Augen weil wir exakt an der gleichen Stelle stehen werden wie heute, nur dass aus der Zahl 6 eine 7 geworden ist. Auch Tomas Caspers, drüben bei Einfach für Alle sieht das übrigens so.

 

Informationen

Der Internet Explorer 6 wurde am 21. August 2001 von Microsoft veröffentlicht und hatte in bis zum Erscheinen des Internet Explorers 7 einen weltweiten Marktanteil zw. 80 und 90 Prozent.

Aktuell steht die Version 8 des Internet Explorers in den Startlöchern, welche von Microsoft mit dem Anspruch entwickelt wird, erstmals einen Browser mit fehlerfreier Unterstützung für CSS 2.1 auszuliefern.


Du kannst die Kommentare zu diesen Eintrag durch den RSS 2.0 Feed verfolgen. Du kannst einen Kommentar schreiben, oder einen Trackback auf deiner Seite einrichten.

Dieser Eintrag kann nicht mehr kommentiert werden.