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:
Selektor {Eigenschaft: Wert; Eigenschaft: Wert;} /* Kommentar */
/*^^^Deklaration1^^^ ^^^Deklaration2^^^*/
/*^^^^^^^^^^Deklarationsbereich^^^^^^^^^^*/
/*^^^^^^^^^^^^^^^^^^^^^Regel^^^^^^^^^^^^^^^^^^^^^^*/
Beispiel:
p.note {font-style: italic; color: gray; background-color: white}
/* Grauer, kursiver Text auf weißem Hintergrund. */
Hier wird der Deklarationsbereich allen 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),
- als internes Stylesheet in einer HTML-Datei (style-Element),
- innerhalb von HTML-Marken (style-Attribut).
CSS-Referenz
siehe auch: Webtemplates, XHTML, DHTML
- CSS allgemein
- w3.org/Style/CSS/ W3-CSS-Home (englisch)
- edition-w3c.de/TR/1998/REC-CSS2-19980512/ Cascading Style Sheets, Level 2 deutsche Übersetzung
- jendryschik.de/wsdev/einfuehrung/css/ Einführung in XHTML, CSS und Webdesign von Michael Jendryschik
- heise.de/ix/artikel/2003/03/050/ Dreiteiliges CSS-Tutorial von Stefan Mintert, erschienen in der iX/Heise Verlag
- de.selfhtml.org/css/ CSS bei SELFHTML
- css4you.de/ CSS 4 You Komplette CSS-Referenz, inkl. Workshops
- css.talky.de/ CSS von Talky
- schattenbaum.net/css/ schattenbaum.net/css, CSS-Einführung
- css.fractatulum.net/index.htm css.fractatulum.net, CSS-Einführung
- meiert.com/de/releases/20040420/ Erweiterter CSS-Überblick von Jens Meiert (Selektoren, Kaskade etc.)
- htmldog.com/guides/cssbeginner/ CSS Beginner’s Guide, CSS-Einführung (englisch)
- css-discuss.incutio.com/ css-discuss.incutio.com, CSS-Wiki (englisch)
- csszengarden.com/ csszengarden.com, Beispielseite internationaler Designer die komplett auf CSS basiert. Der HTML-Content bleibt bei den Beispielen unangetastet. Durch Anklicken der Designs (rechts) wird lediglich das CSS ausgetauscht(englisch)
- Kästen mit HTML/CSS
- thenoodleincident.com/tutorials/box_lesson/boxes.html Little Boxes (englisch)
- webreference.com/html/tutorial24/ Fixing Frames with Fixed Positioning (englisch)
- bjoernsworld.de/ bjoernsworld.de CSS-Anleitung
- css.maxdesign.com.au/floatutorial/ Floatutorial (englisch)
- Listen mit HTML/CSS
- css.maxdesign.com.au/listamatic/ Listamatic (englisch)
- css.maxdesign.com.au/listutorial/ Listutorial(englisch)
- Menüs mit HTML/CSS
- meyerweb.com/eric/css/edge/menus/demo.html Pure CSS Menus (englisch)
- theimposter.org/examples/onhovermenu/ CSS on mouseover Drop-down Menu (englisch)
- htmldog.com/articles/suckerfish/dropdowns/ Son of Suckerfish Dropdowns - (verschachtelte) Rollab-Menüs, die beim Großteil der Bwoser funktionieren (englisch)
- Schriftgröße/-art
- lingo4u.de/article/fontsize/ Dynamische Schriftgröße mit PHP und CSS
- CSS-Selektoren
- css.maxdesign.com.au/selectutorial/ Selectutorial (englisch)
- Workarounds und Hacks
- tantek.com/CSS/Examples/boxmodelhack.html Tantek Çeliks Boxmodell-Hack (englisch) (meiert.com/de/translations/tantek.com/boxmodelhack/ deutsche Übersetzung)
- sam-i-am.com/work/sandbox/css/mac_ie5_hack.html Mac-IE-Hack (englisch)
Der Ursprungsartikel stammt von der deutschsprachigen Wiki pedia (siehe oben: "Original Artikel & Autoren Liste"). Der Text steht unter der GNU Freie Dokumentation Lizenz. |