Woher die CSS-Farbnamen stammen
Die benannten Farben in CSS haben zwei Wurzeln. Die ersten 16 Namen, darunter black, white, red und blue, stammen aus HTML 3.2 und der VGA-Farbpalette der fruehen 1990er Jahre. Sie wurden in CSS 2.1 als Standard festgeschrieben.
Der weitaus groessere Rest geht auf das X Window System (X11) zurueck, ein grafisches Fenstersystem fuer Unix. Dessen Datei rgb.txt enthielt hunderte handbenannter Farben wie cornflowerblue oder peachpuff. Das W3C uebernahm diese Palette und harmonisierte sie im CSS Color Module Level 3. Seit Level 4 ist die Liste bei 148 Schluesselwoertern stabil, ergaenzt um das Sonderwort transparent und das aus der UI-Welt stammende rebeccapurple (#663399), das 2014 zu Ehren der verstorbenen Tochter eines Webstandards-Pioniers aufgenommen wurde.
Die vollstaendige Farbnamen-Tabelle
Die folgende Tabelle ist nach Farbgruppen geordnet und enthaelt zu jedem Namen den offiziellen HEX-Code, das RGB-Tripel und eine Live-Farbprobe. Mit einem Klick auf eine Zeile kopieren Sie den HEX-Wert direkt in die Zwischenablage. Die Suche filtert in Echtzeit nach Name oder HEX-Code.
| Vorschau | CSS-Name | HEX | RGB | Gruppe |
|---|---|---|---|---|
| maroon | #800000 | 128, 0, 0 | Rot | |
| darkred | #8B0000 | 139, 0, 0 | Rot | |
| red | #FF0000 | 255, 0, 0 | Rot | |
| firebrick | #B22222 | 178, 34, 34 | Rot | |
| crimson | #DC143C | 220, 20, 60 | Rot | |
| indianred | #CD5C5C | 205, 92, 92 | Rot | |
| salmon | #FA8072 | 250, 128, 114 | Rot | |
| tomato | #FF6347 | 255, 99, 71 | Rot | |
| hotpink | #FF69B4 | 255, 105, 180 | Pink | |
| deeppink | #FF1493 | 255, 20, 147 | Pink | |
| pink | #FFC0CB | 255, 192, 203 | Pink | |
| lightpink | #FFB6C1 | 255, 182, 193 | Pink | |
| orangered | #FF4500 | 255, 69, 0 | Orange | |
| darkorange | #FF8C00 | 255, 140, 0 | Orange | |
| orange | #FFA500 | 255, 165, 0 | Orange | |
| coral | #FF7F50 | 255, 127, 80 | Orange | |
| gold | #FFD700 | 255, 215, 0 | Gelb | |
| yellow | #FFFF00 | 255, 255, 0 | Gelb | |
| khaki | #F0E68C | 240, 230, 140 | Gelb | |
| moccasin | #FFE4B5 | 255, 228, 181 | Gelb | |
| darkgreen | #006400 | 0, 100, 0 | Gruen | |
| green | #008000 | 0, 128, 0 | Gruen | |
| forestgreen | #228B22 | 34, 139, 34 | Gruen | |
| seagreen | #2E8B57 | 46, 139, 87 | Gruen | |
| olive | #808000 | 128, 128, 0 | Gruen | |
| limegreen | #32CD32 | 50, 205, 50 | Gruen | |
| lime | #00FF00 | 0, 255, 0 | Gruen | |
| mediumseagreen | #3CB371 | 60, 179, 113 | Gruen | |
| springgreen | #00FF7F | 0, 255, 127 | Gruen | |
| yellowgreen | #9ACD32 | 154, 205, 50 | Gruen | |
| teal | #008080 | 0, 128, 128 | Cyan | |
| darkcyan | #008B8B | 0, 139, 139 | Cyan | |
| aqua | #00FFFF | 0, 255, 255 | Cyan | |
| cyan | #00FFFF | 0, 255, 255 | Cyan | |
| turquoise | #40E0D0 | 64, 224, 208 | Cyan | |
| steelblue | #4682B4 | 70, 130, 180 | Blau | |
| dodgerblue | #1E90FF | 30, 144, 255 | Blau | |
| cornflowerblue | #6495ED | 100, 149, 237 | Blau | |
| royalblue | #4169E1 | 65, 105, 225 | Blau | |
| blue | #0000FF | 0, 0, 255 | Blau | |
| mediumblue | #0000CD | 0, 0, 205 | Blau | |
| darkblue | #00008B | 0, 0, 139 | Blau | |
| navy | #000080 | 0, 0, 128 | Blau | |
| indigo | #4B0082 | 75, 0, 130 | Violett | |
| purple | #800080 | 128, 0, 128 | Violett | |
| darkviolet | #9400D3 | 148, 0, 211 | Violett | |
| blueviolet | #8A2BE2 | 138, 43, 226 | Violett | |
| mediumpurple | #9370DB | 147, 112, 219 | Violett | |
| magenta | #FF00FF | 255, 0, 255 | Violett | |
| fuchsia | #FF00FF | 255, 0, 255 | Violett | |
| orchid | #DA70D6 | 218, 112, 214 | Violett | |
| violet | #EE82EE | 238, 130, 238 | Violett | |
| brown | #A52A2A | 165, 42, 42 | Braun | |
| sienna | #A0522D | 160, 82, 45 | Braun | |
| chocolate | #D2691E | 210, 105, 30 | Braun | |
| peru | #CD853F | 205, 133, 63 | Braun | |
| tan | #D2B48C | 210, 180, 140 | Braun | |
| wheat | #F5DEB3 | 245, 222, 179 | Braun | |
| beige | #F5F5DC | 245, 245, 220 | Braun | |
| black | #000000 | 0, 0, 0 | Grau | |
| dimgray | #696969 | 105, 105, 105 | Grau | |
| gray | #808080 | 128, 128, 128 | Grau | |
| darkgray | #A9A9A9 | 169, 169, 169 | Grau | |
| silver | #C0C0C0 | 192, 192, 192 | Grau | |
| lightgray | #D3D3D3 | 211, 211, 211 | Grau | |
| gainsboro | #DCDCDC | 220, 220, 220 | Grau | |
| whitesmoke | #F5F5F5 | 245, 245, 245 | Grau | |
| white | #FFFFFF | 255, 255, 255 | Grau | |
| slategray | #708090 | 112, 128, 144 | Grau |
Auswahl von 69 der 140 benannten CSS-Farben, gruppiert nach Farbton. Werte gemaess CSS Color Module Level 4 (W3C).
Vom Namen zu HEX und RGB: Die Syntax
Ein Farbname ist nichts anderes als eine lesbare Abkuerzung fuer einen festen RGB-Wert. Die drei folgenden Deklarationen erzeugen exakt dieselbe Farbe und sind fuer den Browser gleichwertig:
.button {
/* 1. Benannte Farbe, am lesbarsten */
background: tomato;
/* 2. HEX, kompakt und ueberall ueblich */
background: #FF6347;
/* 3. RGB, moderne CSS Color Level 4 Syntax */
background: rgb(255 99 71);
/* 4. RGB mit Alpha fuer 80% Deckkraft */
background: rgb(255 99 71 / 0.8);
} Auffaellig ist die vierte Variante: Benannte Farben kennen keine Transparenz. Sobald Sie einen Alpha-Kanal brauchen, muessen Sie auf RGB beziehungsweise RGBA oder einen 8-stelligen HEX-Code ausweichen. Das ist einer der wichtigsten praktischen Gruende, einen Farbnamen in seinen RGB-Wert aufzuloesen.
Synonyme: gray/grey, aqua/cyan und Co.
Beim Zaehlen der Farbnamen entsteht oft Verwirrung, weil zwischen 140 und 148 unterschiedliche Zahlen kursieren. Der Grund sind Synonyme: Mehrere Namen verweisen auf denselben Farbwert. Die wichtigsten Doppelungen:
| Name A | Name B | HEX |
|---|---|---|
| aqua | cyan | #00FFFF |
| fuchsia | magenta | #FF00FF |
| gray | grey | #808080 |
| darkgray | darkgrey | #A9A9A9 |
| slategray | slategrey | #708090 |
Rechnet man die fuenf grey-Varianten sowie aqua/cyan und fuchsia/magenta heraus, bleiben aus den 147 Farbnamen genau 140 eindeutige Farbwerte. Genau diese Zahl meinen die meisten Referenzen, wenn von den 140 CSS-Farben die Rede ist.
Farbnamen in CSS-Variablen und Designtokens
In modernen Projekten landen Farben selten direkt als Name im Stylesheet, sondern als zentrale Variable oder Designtoken. Der Trick: Sie koennen einen benannten Wert in eine Custom Property schreiben, sollten ihn aber fuer Wiederverwendbarkeit als HEX oder RGB-Tripel hinterlegen, damit sich daraus auch Alpha-Varianten ableiten lassen.
:root {
/* RGB-Tripel als Token, nicht der Name */
--akzent-rgb: 70 130 180; /* steelblue */
--akzent: rgb(var(--akzent-rgb));
}
.card {
border-color: var(--akzent);
/* Alpha aus demselben Token ableiten */
background: rgb(var(--akzent-rgb) / 0.08);
} So definieren Sie die Farbe nur einmal als Zahlentripel und erzeugen daraus beliebige Deckkraftstufen. Mit einem reinen Farbnamen waere das nicht moeglich. Wer den Workflow vertiefen will, findet im Ratgeber zum bidirektionalen HEX/RGB-Workflow Beispiele fuer Tailwind- und SCSS-Tokens.
Wann Namen, wann HEX oder RGB?
Benannte Farben sind kein schlechter Stil, aber sie haben einen klaren Einsatzbereich. Die folgende Faustregel hilft bei der Entscheidung:
- Farbnamen eignen sich fuer Prototypen, schnelle Demos, Lehrbeispiele und Debugging, etwa ein temporaeres
outline: 2px solid hotpink, um ein Layout-Problem sichtbar zu machen. - HEX ist der Standard fuer feste Markenfarben und wird von praktisch jedem Design-Werkzeug ausgegeben. Kompakt, eindeutig, gut versionierbar.
- RGB und RGBA sind erste Wahl, wenn Sie mit Alpha-Transparenz arbeiten, Farben programmatisch berechnen oder einzelne Kanaele ansprechen.
Da nur 140 Werte einen Namen tragen, deckt das Vokabular ohnehin nur einen winzigen Teil der rund 16,7 Millionen darstellbaren 24-Bit-Farben ab. Sobald eine Marke einen spezifischen Ton braucht, fuehrt kein Weg an HEX oder RGB vorbei.
Haeufige Fragen
Wie viele CSS-Farbnamen gibt es?
Die aktuelle CSS-Color-Module-Spezifikation des W3C definiert 148 benannte Farben (147 Farbnamen plus das transparente Schluesselwort transparent). Davon sind 140 sichtbare, eindeutige Farbwerte, weil einige Namen wie aqua und cyan oder gray und grey identische Werte besitzen. Alle modernen Browser unterstuetzen diese Namen vollstaendig.
Sind gray und grey in CSS dieselbe Farbe?
Ja. CSS akzeptiert sowohl die amerikanische Schreibweise gray als auch die britische Schreibweise grey, und beide ergeben exakt denselben HEX-Wert #808080 beziehungsweise RGB 128, 128, 128. Das gilt ebenso fuer Varianten wie darkgray und darkgrey oder slategray und slategrey.
Warum haben aqua und cyan denselben Farbwert?
Beide Namen verweisen auf #00FFFF beziehungsweise RGB 0, 255, 255. aqua stammt aus der urspruenglichen CSS-2.1-Liste der 16 HTML-Basisfarben, cyan kam mit der erweiterten X11-Palette hinzu. Das W3C hat beide Schreibweisen als Synonyme beibehalten, damit aelterer Code weiter funktioniert. Dasselbe gilt fuer fuchsia und magenta.
Sollte ich Farbnamen oder HEX-Codes in CSS verwenden?
Fuer Prototypen und schnelle Entwuerfe sind Farbnamen wie tomato oder steelblue sehr lesbar. In Produktivcode empfiehlt sich aber HEX oder RGB, weil benannte Farben nur 140 feste Werte abdecken und kein Feintuning erlauben. HEX und RGB lassen sich zudem leichter in Designtokens und CSS-Variablen verwalten.
Funktionieren CSS-Farbnamen in allen Browsern?
Ja. Die benannten Farben sind seit CSS Color Module Level 3 Teil des Standards und werden von allen aktuellen Browsern, einschliesslich Chrome, Firefox, Safari und Edge, identisch dargestellt. Es gibt keine Browser-spezifischen Abweichungen bei den definierten HEX-Werten.
Gibt es einen Farbnamen fuer jeden HEX-Code?
Nein. Es existieren rund 16,7 Millionen darstellbare 24-Bit-Farben, aber nur 140 benannte CSS-Farben. Ein beliebiger HEX-Code wie #1A56DB hat daher in der Regel keinen exakten Namen. Werkzeuge ordnen einem HEX-Code dann den naechstgelegenen benannten Farbwert zu, was aber nur eine Annaeherung ist.
Quellen
- W3C, CSS Color Module Level 4, Named Colors
- MDN Web Docs, named-color (CSS-Datentyp)
- MDN Web Docs, color (CSS-Wert und Syntax)
- W3C, CSS Color Module Level 3, SVG/X11-Farbnamen