Cascading Style Sheets
Cascading Style Sheets (CSS) ist eine Stylesheet-Sprache für strukturierte Dokumente (z.B. HTML und XML). Durch die Trennung von Stil und Inhalt wird das Veröffentlichen und das Betreuen von Webseiten vereinfacht.Neben CSS existieren weitere Stylesheet-Sprachen, wie DSSSL, XSL(T), JSSS und FOSI. Diese spielen jedoch in Browsern, wenn überhaupt, nur eine untergeordnete Rolle.
CSS wird vom W3C spezifiziert. Die CSS1-Spezifikation (1996) ist in aktuellen Browsern mittlerweile nahezu vollständig umgesetzt, von CSS2 (1998) sind einige Elemente bereits weit verbreitet (wie zum Beispiel position:absolute
), aber Fehler und Lücken in den Implementierungen machen die praktische Anwendung schwerer denn nötig.
Das derzeit in Diskussion befindliche CSS3 wird im Gegensatz zu den Vorgängern modular aufgebaut sein, d.h. einzelne Substandards (z.B. zur Audiowiedergabe) haben ihren eigenen Entwicklungsrhythmus und Versionsschritte.
Die Fähigkeiten von CSS sind vielfältig. Neben diversen, weit über HTML 3.2 hinausgehenden Fähigkeiten im Farb- und Schriftbereich, die sich allerdings (noch) nicht mit spezialisierten Textsatzsprachen wie TeX messen können, bietet es etwa Positionierung, Hintergrundbilder, Vorlesestimmen ("aural") sowie noch einiges mehr.
Die Syntax, die mit den geschweiften Klammern Programmiersprachen wie C oder Java ähnlich sieht, besteht aus einzelnen Regeln, Zuweisungen von verschiedenen Deklarationsbereichen, bestehend aus einer oder mehreren Deklarationen, die wiederum aus Eigenschaft und Wert bestehen, zu Selektoren, die z.B. HTML-Elemente sein können:
Beispiel:Selektor {Eigenschaft: Wert; Eigenschaft: Wert;} /* Kommentar */ /*^^^Deklaration1^^^ ^^^Deklaration2^^^*/ /*^^^^^^^^^^Deklarationsbereich^^^^^^^^^^*/ /*^^^^^^^^^^^^^^^^^^^^^Regel^^^^^^^^^^^^^^^^^^^^^^*/
Hier wird der Deklarationsbereich allenp.note {font-style: italic; color: gray; background-color: white} /* Grauer, kursiver Text auf weißem Hintergrund. */
p
-Elementen zugewiesen, die das class
-Attribut mit dem Wert note
besitzen. Würde man das p
im Selektor weglassen, würden alle Elemente mit dem Attributwert selektiert, bei Weglassen des .note
alle p
-Elemente.Ein wichtiges Prinzip von CSS ist die Vererbung der Eigenschaftswerte an untergeordnete Elemente und die Kombination verschiedener Stylesheets (Kaskade). Diese können dabei aus verschiedenen Quellen stammen: vom Autor des Stylesheets, dem Browser (User Agent) oder dem Benutzer.
Die am häufigsten vorkommende Kombination, nämlich mit HTML, kann an drei Orten geschehen:
- Als externes Stylesheet
- für eine HTML-Datei (
link
-Element), - für eine XML-Datei (
xml-stylesheet
-Verarbeitungsanweisung),
- für eine HTML-Datei (
- als internes Stylesheet in einer HTML-Datei (
style
-Element), - innerhalb von HTML-Marken (
style
-Attribut).
siehe auch: Webtemplates, XHTML, DHTML
Weblinks