Syntax

css-deklarationEine CSS-Anweisung (englisch rule) gibt an, dass für festgelegte Teile eines Dokuments eine Kombination von bestimmten Eigenschaften gelten soll. Geschrieben wird sie als eine durch Kommata getrennte Aufzählung von Selektoren («Für diese Typen von Teilen …»), gefolgt in geschweiften Klammern von einer semikolongetrennten Liste von Eigenschafts-Deklarationen («… nimm die folgenden Eigenschaften!»). Jede Eigenschaftsdeklaration besteht aus der Bezeichnung der Eigenschaft, einem Doppelpunkt, und dem Wert, den sie annehmen soll. Nach der letzten Eigenschaftsdeklaration ist vor der schliessenden, geschweiften Klammer ein abschliessendes Semikolon erlaubt, aber nicht notwendig. Der Aufbau von CSS-Anweisungen ist rechts abgebildet.

Um diese Teile einer Anweisungen herum ist Leerraum frei verwendbar. Häufig schreibt man den Doppelpunkt ohne Zwischenraum hinter den Eigenschaftsnamen, jede Eigenschaftsdeklaration in eine eigene Zeile, und schliesst auch die letzte Eigenschaft mit einem Semikolon. So kommt es bei späteren Änderungen weniger leicht zu Syntaxfehlern.

Ein Stylesheet darf beliebig viele solcher Anweisungen enthalten. Die folgende Tabelle enthält einfache Selektoren, mit denen Elemente (meist HTML-Elemente) ausgewählt werden können. Daneben gibt es noch weitere Selektoren, genannt Kombinatoren, Pseudoklassen, strukturelle Pseudoklassen und Pseudoelemente.

 

MusterBedeutung: selektiert …Eingeführt inDefinitionErläuterung
*jedes ElementCSS2Universal selectorUniversalselektor
Ejedes Element vom Typ ECSS1Type selectorsTypselektor
.cjedes Element der Klasse c (analog [class~='c'])CSS1Class selectorsKlassenselektor
#myiddas Element mit der ID «myid».CSS1ID selectorsID-Selektor
[foo]Elemente, deren «foo»-Attribut gesetzt ist (unabhängig vom Wert)CSS2Attribute selectorsAttributpräsenz
[foo=bar]Elemente, deren «foo»-Attribut mit dem Wert «bar» gesetzt istCSS2Attributwerte
[foo~=bar]Elemente, deren «foo»-Attribut das Wort «bar» enthält (z. B. «bar» oder «bar quz», nicht aber «barquz»)CSS2
[foo|=bar]Elemente, deren «foo»-Attribut die Zeichenfolge «bar» ist oder mit der Zeichenfolge «bar-» beginntCSS2
[foo^=bar]Elemente, deren «foo»-Attribut mit der Zeichenfolge «bar» beginntCSS3Substring matching attribute selectorsTeilübereinstimmungen
[foo$=bar]Elemente, deren «foo»-Attribut mit der Zeichenfolge «bar» endetCSS3
[foo*=bar]Elemente, deren «foo»-Attribut die Zeichenfolge «bar» enthältCSS3