Unser Protagonist

Zeitgleich mit der Entstehung des World Wide Web kamen die ersten Gedanken in Richtung Layout auf. Man wollte mit HTML eine Sprache schaffen, die den Inhalt von Webseiten treffend auszeichnet, brauchte jedoch eine weitere Sprache für die Formatierung von Elementen. Håkon Wium Lie - ein Mitarbeiter von Tim Berners-Lee - unterbreitete, bereits 1994 einen ersten Vorschlag für eine solche Stylesheetsprache und nannte diese Cascading Style Sheets (CSS).

  • * 1965 in Halden, Norwegen
  • 1991 Master of Science in Visual Studies
  • 1994 erster Vorschlag für CSS
  • 1999 CTO bei Opera
  • 2006 Doktor der Philosophie an der University of Oslo
Håkon Wium Lie (zugeschnitten: 1918x1417) - Wikipedia

Die ersten Vorschläge

Am 10. Oktober 1994 unterbreitete Håkon Wium Lie den ersten Vorschlag für die neue Stylesheetsprache. Als Mitarbeiter von Tim Berners-Lee gab es keine Zweifel, dass diese Sprache speziell für HTML entwickelt wurde. Aus diesem Grund nannte Wium Lie die Sprache zunächst Cascading HTML Style Sheets (CHSS), welche später in Cascading Style Sheets (CSS) vereinfacht wurde.

Zusammen mit Bert Bos, der zu dieser Zeit an einer Implementierung des Browsers Argo arbeitete, entwickelten die Beiden CSS weiter. Auf der Konferenz Mosaic and the Web stellte Wium Lie 1994 in Chicago die neue Stylesheetsprache vor. Im Folgejahr präsentierte er zusammen mit Bert Bos ein weiteres Mal das Konzept von CSS

Sprachen für die Formatierung von Elementen gab es bereits, jedoch war der Entwurf der beiden Entwickler um einen entscheidenden Unterschied reicher. CSS bot als Erstes die Idee an, dass Regeln über mehrere Stylesheets hinweg vererbt werden konnten. Sogar Elternelemente vererben bestimmte Regeln (Bsp.: color) auf ihre Kindelemente:

  • Html
  • Ergebnis
<h1 style="color: red;"> <span>Ein roter Text</span> </h1>

Der obige Text wird lediglich durch das Konzept der Vererbung in roter Farbe angezeigt, denn die Farbe Rot wird vom Elternelement (<h1>) auf das Kindelement (<span>) vererbt. Das World Wide Web Consortium (W3C) wurde relativ schnell auf die beiden Entwickler aufmerksam und bot ihnen an gemeinsam an der Stylesheetsprache weiterzuarbeiten. Da sämtliche Standards von dieser Organisation entwickelt wurden, war der Entschluss schnell getroffen und bereits 1996 wurde die CSS Level 1 Recommendation publiziert.

CSS2

In den nächsten zwei Jahren entwickelte das den Standard CSS Level 2 Recommendation (CSS2), welcher von den Browserherstellern zunächst schwierig zu implementieren war. Viele Unstimmigkeiten und Techniken waren hinzugekommen, die weniger auf Begeisterung stießen.

Aus diesem Grund begannen bereits 2002 die Arbeiten an einer Generalüberholung des Standards, welche am 7. Juni 2011 als fertige CSS Level 2 Revision 1 Recommendation (CSS 2.1) verabschiedet wurde. Diesen Standard unterstützten die Browser bis 2014 weitestgehend vollständig und ohne Fehler.

Das Chaos der Standards

Seit 2000 ist CSS3 in der Entwicklung. Mit ein paar schnellen Berechnungen kommt man auf verwirrende Gegebenheiten:

  • Die Entwicklung von CSS3 fing bereits vor CSS 2.1 an
  • Die Entwicklung von CSS 2.1 dauerte von 2002 bis 2011 insgesamt 9 Jahre

Aus diesem Grund sollen hier ein paar wesentliche Fragen zu der Entwicklung von Standards im World Wide Web geklärt werden. Eine Sprache weiterzuentwickeln funktioniert nicht innerhalb weniger Monate, da viele Aspekte berücksichtigt werden müssen. Die Absprache mit den Browserherstellern müssen darüber hinaus getroffen werden, denn diese stellen ja den Endkunden für die erfolgreiche Implementierung dar. Deshalb gibt es mehrere Status, die ein Standard durchlaufen kann.

Ein Status wäre beispielsweise der "working draft", welcher grob gesagt eine Vorstufe darstellt, die zur einem Standard führen könnte. Der Status, der die Browserhersteller am meisten interessiert, dürfte "Recommendation" (eng. Empfehlung) sein. Dieser stellt einen tatsächlichen Standard dar und kann ohne Angst vor nachträglichen Veränderungen implementiert werden.

Gäbe es da nicht auch noch diese "Revision", mithilfe derer man eine "Recommendation" noch einmals abändern kann. Da der Standard jedoch gesetzt ist und einen Namen trägt, der in der Regel aus der Sprache und der Version der Entwicklung besteht (Bsp.: CSS 2), wird die Revision mit einem Punkt und der Revisionsnummer angegeben (CSS 2.1).

CSS3

CSS3 wird seit dem Jahre 2000 entwickelt und hat noch keinen endgültigen Standard (Recommendation). Das hat nämlich einen ganz bestimmten Grund:

Anders als seine Vorgängerversionen ist CSS3 modular aufgebaut. Wer mit der Objekt Orientierten Programmierung (OOP) bereits vertraut ist, wird sich nun einiges darunter vorstellen können. Die Sprache wird aus kleinen Bausteinen (Modulen) aufgebaut, die nach Belieben dazu und weggeschaltet werden können. Dieses Prinzip hat viele Vorteile, denn einerseits, kann man nun entscheiden, welche Bausteine man benötigt und welche nicht. Da Browserhersteller jedoch alle Module unterstützen müssen, zählt dieser Vorteil hier nicht.

Vielmehr wurde CSS3 aus Gründen der Weiterenticklung modular aufgebaut, denn nun braucht es nicht mehr viele Jahre, bis ein Standard gefunden wurde, weil man nur noch an verschiedenen Modulen arbeitet, die wiederum mit Standards belegt sind. Der Vorteil hierbei liegt klar auf der Hand:

Ist ein Modul in CSS3 fertiggestellt und hat den Standard "Recommendation", so können die Browser diesen implementieren und müssen nicht auf die Vollendung der gesamten Stylesheetsprache warten.

Eines der ersten Module, die für CSS3 fertiggestellt wurden, kam am 29. September 2011 raus. Mithilfe dieses Moduls sind zahlreiche neue Selektoren und Pseudoklassen hinzugekommen.