Webtechnologien im Umbruch: CSS Level 3

Die Layoutsprache CSS (Cascading Stylesheets), mit der HTML-Dokumente im Netz erst ihr hübsches Äußeres bekommen, hatte es schon immer schwer. Schon die ersten Implementierungen in Browsern waren alles andere als brauchbar. Exemplarisch sei hier der Netscape Navigator 4 genannt, welcher mit seiner CSS-Emulation namens Javascript Stylesheets (JSSS) so manch einen Webdesigner wohl fast in den Wahnsinn getrieben haben dürfte.
Auch der andere Platzhirsch, Microsofts Internet Explorer, stellt sich traditionell ein wenig quer. Das Ergebnis dieser fehlerhaften Implementierung ist bis heute zu sehen. Die CSS-Benutzung beschränkt sich auf vielen Seiten auf das Formatieren von Links und ein paar Angaben für Schriften. Der Rest wird traditionell in jedem einzelnen HTML-Dokument definiert und bläht diese manchmal zu wahren und schlecht zu wartenden Tabellenmonstern auf. Immerhin spart man sich so einige lästige Anpassungen an fehlerhafte Browser, die bei der fortgeschrittenen Benutzung von CSS leider notwendig sind.
Erst mit dem Internet Explorer 7 hat es Microsoft geschafft, eine brauchbare Unterstützung der CSS-Level 1 und 2 zu erreichen, immerhin passend zum Jubiläum von CSS: Die Layoutsprache feiert derzeit ihr zehnjähriges Bestehen .
Viel Grund zur Freude bietet dies aus der Sicht des Webdesigners jedoch nicht. Seit 1999 arbeitet das W3C jetzt an dem Nachfolger von CSS Level 2 und lässt sich selbst mit der ersten Revision von CSS 2 (Cascading Style Sheets, Level 2 Revision 1) einige Zeit. Immerhin nähert sich der Standard mit der Revision ein wenig der Praxis: Es werden einige Fehler korrigiert und (eigenmächtige) Entscheidungen der Browserhersteller berücksichtigt.
Doch die kleine, aber wichtige Aktualisierung soll nur am Rande erwähnt werden. Erst CSS Level 3 bringt einige langerwartete Verbesserungen: Wer auf runde Rahmen, Transparenzen und mehr Möglichkeiten bei Selektoren und Pseudoklassen hofft, muss sich jedoch noch eine Weile gedulden. Wer vorsichtig ist, kann die ersten CSS-3-Funktionen, die sich schon in dem ein oder anderen Browser befinden, aber bereits benutzen.
Die Browser Firefox und Safari zeigen abgerundete Rahmenecken bereits an. Für Gecko (Firefox) muss ein -moz- und für Webkit (Safari) ein -webkit- vor die Eigenschaft border-radius gestellt werden. Andere Teile von CSS 3 funktionieren auch ohne diese Umwege. Einen Überblick(öffnet im neuen Fenster) bzw. eine Testsuite(öffnet im neuen Fenster) bietet css3.info(öffnet im neuen Fenster) .
Der Einsatz von CSS-3-Regeln ist jedoch nur bedingt empfehlenswert. Das derartige Regeln nicht validieren, versteht sich von selbst. Die genannten runden Rahmen sind zudem als experimentelle Unterstützung mehr als deutlich mit den vorangehenden Schlüsselwörtern gekennzeichnet und zumindest Firefox hat noch Fehler im Umgang mit diesen.
Die Unterstützung von CSS 3 durch die Browser Opera, Safari/Konqueror und Firefox weist außerdem geringe Schnittmengen auf, ein Zeichen dafür, dass die Entwicklung erst am Anfang steht. Doch alle Browser versprechen für die Zukunft eine bessere CSS-3-Unterstützung. Mit den Vorabversionen von Safari 3 und Firefox 3 lässt sich das im Test von css3.info bereits nachvollziehen, auch die noch nicht verfügbare Opera-Version 9.5 verspricht laut den Entwicklern besseren Umgang mit CSS
Während der HTML-5-Standard erst in den Kinderschuhen steckt und erste Implementierungen noch Mangelware sind, gibt es diese bei CSS 3 bereits, jedoch kommt das W3C anscheinend mit der Standardisierung nicht voran. Die ersten Arbeiten wurden bereits 1999 vorgelegt und stecken immer noch in der Phase des Arbeitsentwurfs (Working Draft), obwohl sie teilweise sogar den Status "Candidate Recommendation" innehatten, also fast fertig waren.
Derzeit befinden sich fünf CSS-3-Module im "Candidate Recommendation"-Status (CR). Der nächste Schritt ist die Deklarierung als "Proposed Recommendation" (PR), dem die eigentliche Verabschiedung ("Recommendation") folgt. Bereits ab dem CR-Status heißt das W3C die Nutzung im Alltag willkommen.
Doch das W3C wiegelt ab und erteilte CSS 2.2 im eigenen neuen CSS-Blog erst kürzlich eine Absage(öffnet im neuen Fenster) . CSS 2.2 ist nach Ansicht der CSS Arbeitsgruppe (CSS WG) nicht nötig, da CSS 3 bereits modularisiert wurde. Mit anderen Worten: Arbeiten an einigen Teilbereichen von CSS 3 könnten deutlich früher abgeschlossen werden, während andere Bereiche vielleicht erst Jahre später fertig werden.
Dank der aufgekommenen Blogkultur verlegt sich die Diskussion zudem stärker in die Öffentlichkeit und die Arbeit der CSS WG erscheint geschlossener, als sie es ist. Die Arbeitsgruppe lädt jedoch explizit zur Teilnahme ein, sei es durch Kommentieren der Arbeit, Erstellen von Testsuiten oder Menschen, selbst als Autor einer Spezifikation aktiv zu werden.
Mehr als zwei Dutzend CSS-3-Module sind in der Entwicklung und sollen auf einem stabilen CSS 2.1 aufbauen. Teilweise sind die Arbeiten weit fortgeschritten, teilweise existiert noch nicht mal ein erster Entwurf. Viele Module sind jedoch nicht für alle Browser vorgesehen. Um das Mobile Profile braucht sich der Desktop-Browser etwa nicht zu kümmern und das Mathematik-Modul für Formeln spricht ebenfalls eine sehr spezielle Gruppe an. Durch die Modularisierung kann zudem das Mathematik-Modul nicht den gesamten CSS-3-Standard aufhalten.
Zu den sicherlich interessanten Modulen für Browserhersteller wie auch Webdesigner gehören Selektors Level 3(öffnet im neuen Fenster) , das immerhin hohe Priorität genießt, sowie das Modul CSS Multi-column Layout(öffnet im neuen Fenster) , welches die große Schwäche von CSS 2 bei klassischen Drei-Spalten-Layouts beseitigen und bei richtiger Anwendung mobile Geräte nicht behindern sollte.
Die Nutzung von CSS bleibt auf absehbare Zeit ein kompliziertes Unterfangen. Insbesondere bei WYSIWYG-Editoren gibt es noch immer Defizite, HTML-Mailer wie Outlook 2007 wissen von HTML und CSS, wenn überhaupt, nur die Grundbegriffe und alte Browser geraten zunehmend in Schwierigkeiten bei der Darstellung von Webseiten. Wie bei HTML 5 gilt auch hier: Es ist mehr als nur ein Standard nötig, um das Web zu verbessern.
Allen Fortschritten zum Trotz, das größte Problem (vor allem aus Sicht der Webdesigner) bleibt – direkt oder indirekt – der Anwender: Ein nicht unerheblicher Teil der Anwender im Internet schert sich nicht um Browserschwächen und bleibt als "Gewohnheitstier" bei dem Programm, das ihm vorgesetzt wurde. Wenn der Rechner entsprechend alt ist, kann das durchaus der Internet Explorer 5 sein. Was soll der Webdesigner tun, wenn der Anwender nicht einmal weiß, was ein Browser ist(öffnet im neuen Fenster) ?
Langsam sich bei den Massen durchsetzende neue (mobile) Geräteklassen, bei denen gerade tabellenbasierte Layouts ihre Schwierigkeiten haben, zwingen jedoch zu einem Umdenken. Smartphones und auch Apples iPhone , der Webbrowser auf der Spielekonsole, das Spielehandheld und andere Geräte wären hier zu nennen, die im Web zunehmend an Bedeutung gewinnen.
Wer CSS beherrscht und auch mit HTML umgehen kann, hat hier wenig Probleme. Dem Autor liegt der korrekte Umgang sozusagen im Blut, denn die Standards sind durchaus für diese Fälle vorbereitet gewesen. Der Tabellendesigner hingegen ist auf den Browserhersteller angewiesen, der versucht, die Webseite passend zu modifizieren, dafür gibt es jedoch keinen Standard und das Ergebnis ist weit weg vom "Tabellen-Ideal" der Pixelgenauigkeit.
Gerade der Erfolg des iPhones könnte Webdesigner zumindest in den USA zum Umdenken zwingen, auch wenn das iPhone Berichten zufolge prinzipiell alle Seiten gut darstellen soll. Apples neuer telefonierender Minicomputer mit MP3-Unterstützung kann jedoch auch mit Seiten für kleine Geräte umgehen, wie den Design-Empfehlungen(öffnet im neuen Fenster) des Herstellers zu entnehmen ist. Via " CSS 3 Media Queries(öffnet im neuen Fenster) " kann eine Webseite ein für diese Geräteklasse angepasstes Stylesheet ausliefern.
Für das iPhone empfiehlt Apple folgende Angaben im HTML-Kopf:
Hier wird also nicht die sonst üblichere Angabe von "handheld" genutzt, Apple sieht das iPhone offenbar nicht mehr als Handheld. Der CSS-2-Spezifikation von 1998 entnehmend besitzt ein Handheld typischerweise ein schmales Display mit monochromer Anzeige und surft mit begrenzter Bandbreite. Opera für das Nintendo DS nutzt entsprechend angegebende Stylesheets für Handhelds und auch der Desktop-Browser von Opera kann diese verwenden (via Umschalt-F11). Selbiges gilt für den Internet Explorer Mobile, der mittlerweile "handheld" ebenfalls unterstützt(öffnet im neuen Fenster) . Golem.de nutzt das Profil experimentell im Veranstaltungskalender .
Statt "handheld" nutzt Apple die Angabe von "screen" mit der erst in CSS 3 möglichen Angabe einer Maximalbreite. Es dürfte prinzipiell auch ungefährlich sein, dasselbe Stylesheet für Handhelds und CSS-3-Mobilbrowser zu nutzen, die HTML-Kopfangabe würde dann so aussehen:
Andere Browser, die auch CSS 3 Media Queries unterstützen, können die Angaben ebenfalls nutzen, um Seiten auf Minicomputern darzustellen, es handelt sich also nicht um eine reine Apple-Funktion. Der Opera-Browser unterstützt dies bereits. Ob Opera für Nintendos Wii, welche ebenfalls ein sehr geringe Bildschirmauflösung nutzt, diese Funktion unterstützt, konnte Golem.de bisher nicht überprüfen. Die Kennung "Opera/9.10_(Nintendo_Wii;_U;_;_1621;_de)" deutet zumindest darauf hin. Damit wären nun bereits zwei Geräte auf dem Markt, die einen hohen Verbreitungsgrad haben bzw. ein entsprechendes Potenzial besitzen, obgleich mit einer höchst unterschiedlichen Nutzerbasis.
Trotz aller Neuerungen im vergleichsweise jungen Internet müssen alte Browser mit all ihren CSS-Macken und -Sünden berücksichtigt werden, die auch so schnell nicht verschwinden werden. Während früher vor allem die Technikenthusiasten sich im Internet bewegten und auch regelmäßig ihre Hardware und Software austauschten, ist das bei der Masse eher nicht zu erwarten. Diese bewegt sich auch die nächsten Jahre weiterhin mit dem Internet Explorer 6 durchs Netz mit einem Rechner, der auf lange Zeit für viele schnell genug sein dürfte.
Bis CSS 3 sicher genutzt werden kann, können gut und gerne zehn Jahre vergehen, vielleicht auch sehr viel länger, denn der Internet Explorer 6 bleibt hartnäckig am Leben. "Schuld" daran sind möglicherweise Google mit der IE-Toolbar, Firefox und das Service Pack 2 für Windows XP, welche zusammen den "Spam Terrorismus" bekämpften und damit die wichtigsten Gründe für einen Wechsel genommen haben, wie ein Artikel von particletree.com(öffnet im neuen Fenster) versucht zu erklären.



