Webtechnologien im Umbruch: CSS Level 3

Dieses Thema im Forum "Netzwelt" wurde erstellt von zwa3hnn, 12. Juli 2007 .

Schlagworte:
  1. 12. Juli 2007
    Modularisierung sollte Entwicklung eigentlich beschleunigen
    Während die Entwicklung an HTML 5 erste Ansätze zeigt und das W3C hofft, bis 2010 einen fertigen Standard (Recommendation) auf die Beine zu bringen, tröpfelt die Entwicklung von CSS Level 3 nur so vor sich hin. Dabei sind zumindest Teile der Spezifikation bereits in (einige) Browser eingeflossen und doch scheint Standard noch nicht in greifbare Nähe zu rücken.


    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.

    Für den Blick zurück kann es sich durchaus lohnen, einmal Netscape 4 zu installieren und etwas durchs Web zu stöbern. Unlesbare Webseiten sowie Abstürze sind garantiert und zeigen eindrucksvoll die Leidenswege von Webdesignern, die es gewagt haben, dem Browser CSS beizubringen.

    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.

    Netscape 4 hat heute praktisch keine Bedeutung mehr und hat nicht zuletzt durch die Bündelung des Internet Explorers mit Windows massiv Marktanteile verloren. Anders beim Internet Explorer: Alte Versionen sind noch immer verbreitet und bereiten Webdesignern weiterhin Kopfschmerzen. So verhindert die bis heute fehlerhafte Implementierung von CSS erfolgreich die Nutzung des Standards.

    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 bzw. eine Testsuite bietet css3.info.

    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 Opera 9.5, Safari 3 und Firefox 3 lässt sich das im Test von css3.info bereits nachvollziehen.

    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.

    Die Mühlen des W3C mahlen langsam und so kamen bereits Stimmen auf, die nach CSS 2.2 rufen. In CSS 2.2 könnten Teile von CSS 3 einfließen, auf die Webdesigner nicht gerne warten und die bereits einen stabilen Eindruck machen. Entsprechende Kandidaten wären die abgrundeten Rahmen, Mehrspalten-Layouts und verschiedene Hintergrundbilder. Auch andere, von einigen Browserherstellern bereits unterstützte Teile wie Box-Schatten oder die neuen Selektoren und Pseudoelemente wären geeignet.

    Doch das W3C wiegelt ab und erteilte CSS 2.2 im eigenen neuen CSS-Blog erst kürzlich eine Absage. 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.

    Das größte Problem für das W3C ist die Zeit: Den jeweiligen Autoren der einzelnen CSS-3-Module fehlt es neben ihren eigentlichen Aufgaben an Zeit und das Konsensprinzip des W3C trägt ebenfalls seinen Teil bei, wollen doch viele Parteien gehört werden. So übrigens auch Microsoft, deren Entwickler seit der Wiederaufnahme der Entwicklung des Internet Explorer an der Arbeitsgruppe aktiv mitarbeiten. Derzeit liegt der Fokus zudem auf der Fertigstellung von CSS 2 Level 1. CSS 3 wird nur nebenher gepflegt.

    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, das immerhin hohe Priorität genießt, sowie das Modul CSS Multi-column Layout, 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?

    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 des Herstellers zu entnehmen ist. Via "CSS 3 Media Queries" kann eine Webseite ein für diese Geräteklasse angepasstes Stylesheet ausliefern.

    Für das iPhone empfiehlt Apple folgende Angaben im HTML-Kopf: <link media="only screen and (max-device-width: 480px)" href="iPhone.css" type="text/css" rel="stylesheet" /> 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 kann diese verwenden (via Umschalt-F11). Selbiges gilt für den Internet Explorer Mobile, der mittlerweile "handheld" ebenfalls unterstützt. 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: <link media="handheld, screen and (max-device-width: 480px)" href="iPhone.css" type="text/css" rel="stylesheet" />

    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 versucht zu erklären.


    quelle: Golem.de

    P.S.: Für Links und Bilder bitte die Quelle besuchen.
     
  2. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.