Farben in CSS

Bislang haben Sie sich nur mit der Struktur von Stylesheets beschäftigt, nicht aber mit den eigentlichen Befehlen. In den nächsten Kapiteln werden viele wichtige Style-Definitionen und die zugehörigen Werte genauer betrachtet. Dieses Kapitel beginnt mit den Möglichkeiten, Farben in CSS zu notieren.

Benannte Farben

In den vorherigen Kapiteln haben Sie die Definition von Farben mit Farbnamen bereits es mehrfach gesehen. Diese sog. benannten Farben bestehen aus dem englischen Farbnamen:

H1 { color: red; }

Die folgenden 16 Farben werden von praktisch allen Browser erkannt und richtig dargestellt:

qua gray navy silver
black green olive teal
blue lime purple white
fuchsia maroon red yellow

RGB-Farben

Von Bildbearbeitungsprogrammen wie Photoshop kennen Sie es vielleicht: Farben lassen sich auch durch eine Kombination aus den drei RGB-Werten definieren:

R steht für den Rot-Anteil, G für den Grün-Anteil und B für den Blau-Anteil. Jeder Anteil kann einen Wert von 0 bis 255 annehmen und so ergeben sich 16.777.216 verschiedene Farben (Truecolor).

Numerische RGB-Angabe

Um eine Überschrift rot zu gestalten, lässt sich folgende Angabe benutzen:

H1 { color: rgb(255,0,0); }

Folgende Tabelle stellt die Angaben für die wichtigsten, oben genannten Farben dar:

Farbe RGB-Wert
aqua rgb(0,255,255)
black rgb(0,0,0)
blue rgb(0,0,255)
fuchsia rgb(255,0,255)
gray rgb(128,128,128)
green rgb(0,128,0)
lime rgb(0,255,0)
maroon rgb(128,0,0)
navy rgb(0,0,128)
olive rgb(128,128,0)
purple rgb(128,0,128)
red rgb(255,0,0)
silver rgb(192,192,192)
teal rgb(0,128,128)
white rgb(255,255,255)
yellow rgb(255,255,0)

Sollten einzelne Werte höher oder niedriger als 255 bzw. 0 sein (z.B. rgb(-50,3000,9000)), werden sie auf den nächstmöglichen Wert gestellt (ergibt: rgb(0,255,255)).

Prozentuale RGB-Angabe

RGB-Farben lassen sich auch als Prozentangaben des Rot-, Grün- und Blau-Anteils angeben:

H1 { color: rgb(0%,0%,0%); }     /*schwarz*/
H2 { color: rgb(50%,50%,50%); }  /*grau*/

0% bedeutet dabei keinen Anteil an der jeweiligen Farbe, 100% vollen Anteil:

P.eins { color: rgb(0%,0%,0%); }
P.zwei { color: rgb(20%,20%,20%); }
P.drei { color: rgb(40%,40%,40%); }
P.vier { color: rgb(60%,60%,60%); }
P.fuenf { color: rgb(80%,80%,80%); }
P.sechs { color: rgb(100%,100%,100%); }

Hexadezimale Angabe

Diese letzte Möglichkeit Farben zu notieren, ist die gebräuchlichste Variante.

Hier wird der Anteil der einzelnen Farben durch hexadezimale Zahlen bestimmt. Der gültige Bereich für hexadezimale Zahlen ist 00 bis FF.

Diese Notation kommt daher, dass hexadezimale Zahlen einem 16-System gehorchen. Da es nur zehn Ziffern gibt (0-9), folgen nach der Ziffer 9 die Buchstaben A, B, C, D, E und F.

Die ersten 32 Werte – beispielsweise für den Rotanteil – sehen so aus:

00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 0A, 0B, 0C, 0D, 0E, 0F,
10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B, 1C, 1D, 1E, 1F

Hexadezimale Kurzform

Bei den hexadezimalen Angaben können Sie in CSS zur Notation eine spezielle Kurzform verwenden, um Tipparbeit zu sparen.

H1 { color: #F00; }  /*rot - statt #FF0000*/
H2 { color: #00F; }  /*blau - statt #0000FF*/
H3 { color: #000; }  /*schwarz - statt #000000*/
H4 { color: #FFF; }  /*weiß - statt #FFFFFF*/
H5 { color: #999; }  /*Grauwert - statt #999999*/
H6 { color: #369; }  /*Blauton - statt #336699*/

Es kann – sofern die beiden Ziffern der Rot-, Grün- und Blau-Werte übereinstimmen – jeweils nur eine Ziffer notiert werden.

Zum Schluss noch einmal die wichtigsten Farben in allen Notationsformen:

Farbe Numerisch Prozentual Hexadezimal Kurzform
aqua rgb(0,255,255) rgb(0%,100%,100%) #00FFFF #0FF
black rgb(0,0,0) rgb(0%,0%,0%) #000000 #000
blue rgb(0,0,255) rgb(0%,0%,100%) #0000FF #00F
fuchsia rgb(255,0,255) rgb(100%,0%,100%) #FF00FF #F0F
gray rgb(128,128,128) rgb(50%,50%,50%) #808080
green rgb(0,128,0) rgb(0%,50%,0%) #008000
lime rgb(0,255,0) rgb(0%,100%,0%) #00FF00 #0F0
maroon rgb(128,0,0) rgb(50%,0%,0%) #800000
navy rgb(0,0,128) rgb(0%,0%,50%) #000080
olive rgb(128,128,0) rgb(50%,50%,0%) #808000
purple rgb(128,0,128) rgb(50%,0%,50%) #800080
red rgb(255,0,0) rgb(100%,0%,0%) #FF0000 #F00
silver rgb(192,192,192) rgb(75%,75%,75%) #C0C0C0
teal rgb(0,128,128) rgb(0%,50%,50%) #008080
white rgb(255,255,255) rgb(100%,100%,100%) #FFFFFF #FFF
yellow rgb(255,255,0) rgb(100%,100%,0%) #FFFF00 #FF0