Farbe

Hex-Farbcodes, RGB, HSL und OKLCH erklärt

#7c3aed, rgb(124 58 237), hsl(262 83% 58%) und oklch(54.1% 0.247 293) sind dasselbe Violett. Hier steht, was jede Schreibweise tatsächlich aussagt und wann sich welche lohnt.

GradientlyVerifiziertes Gradiently-Konto··5 Min. Lesezeit
Cover: Mauve Corridor · GR·1BS7·H0

Die Kurzfassung

  • Hex-Farbcodes wie #7c3aed sind eine kompakte Schreibweise für Rot-, Grün- und Blauwerte von 0 bis 255, jeweils als zwei Ziffern zur Basis 16.
  • RGB, Hex und HSL beschreiben dieselben sRGB-Farben, sodass sich jede Farbe in einer Schreibweise exakt in die anderen umrechnen lässt.
  • HSL lässt sich gut von Hand anpassen, aber sein Helligkeitswert entspricht nicht dem, wie hell Farben wirken, weshalb Gelb und Blau bei 50 % sehr unterschiedlich aussehen.
  • OKLCH beschreibt Farbe über wahrgenommene Helligkeit, Buntheit und Farbton und ist damit die beste Schreibweise für Paletten, Abstufungen und weiche Farbverläufe.
  • Eine praktische Regel: Teile Markenfarben als Hex und baue Paletten und Farbverläufe in OKLCH.
Auf dieser Seite

Hex-Farbcodes wie #7c3aed sind die gängigste Art, eine Farbe am Bildschirm zu schreiben: ein # gefolgt von sechs Zeichen, die den Anteil an Rot, Grün und Blau angeben. RGB schreibt dieselben Zahlen dezimal, HSL ordnet sie zu Farbton, Sättigung und Helligkeit um, und OKLCH beschreibt Farbe so, wie das Auge sie wahrnimmt. Es sind verschiedene Schreibweisen für dieselben Farben, und jede eignet sich für eine andere Aufgabe am besten.

Fünf Farben, die in diesem Leitfaden als Beispiele dienen. Die Tabelle unten schreibt jede in allen vier Schreibweisen.

So funktionieren Hex-Farbcodes

Ein Hex-Code besteht aus drei Paaren von Ziffern zur Basis 16: #RRGGBB. Die Basis 16 zählt von 0 bis 9 und dann von a bis f, sodass jedes Paar von 00 (nichts) bis ff (255, voll) reicht. In #7c3aed ist Rot 7c (124), Grün 3a (58) und Blau ed (237): viel Blau, ordentlich Rot, wenig Grün, also Violett. Drei Kanäle mit je 256 Werten ergeben 16.777.216 mögliche Farben.

  • Kurzschreibweise: #f0c entspricht #ff00cc. Jede Ziffer wird verdoppelt, daher klappt das nur bei Farben, deren Paare sich wiederholen.
  • Transparenz: Ein achtstelliger Code hängt am Ende den Alphawert an. #7c3aed80 ist das Violett mit etwa 50 % Deckkraft, denn 80 ist 128 von 255.
  • Groß- und Kleinschreibung ist egal: #7C3AED und #7c3aed sind identisch.
  • Grautöne haben drei gleiche Paare: #767676, #1a1a1a und #f4f4f4 sind alle neutral.

RGB: dieselben Zahlen dezimal

RGB schreibt die drei Kanäle als gewöhnliche Zahlen von 0 bis 255. Modernes CSS trennt sie mit Leerzeichen und hängt die Transparenz nach einem Schrägstrich an; die ältere Schreibweise mit Kommas und rgba() funktioniert weiterhin überall. RGB ist praktisch, wenn ein Tool oder eine API Zahlen verlangt oder wenn du die Zusammensetzung einer Farbe auf einen Blick lesen willst.

css
/* All four lines are the same violet */
color: #7c3aed;
color: rgb(124 58 237);
color: rgb(124, 58, 237);
color: hsl(262 83% 58%);

/* The same violet at 50% opacity */
color: #7c3aed80;
color: rgb(124 58 237 / 0.5);
Oben die moderne Schreibweise mit Leerzeichen, darunter die ältere mit Kommas. Browser akzeptieren beide.

HSL: Farbton, Sättigung und Helligkeit

HSL beschreibt eine Farbe über ihren Farbton als Winkel auf dem Farbkreis (0 ist Rot, 120 Grün, 240 Blau), ihre Sättigung von Grau (0 %) bis zur vollen Farbe (100 %) und ihre Helligkeit von Schwarz (0 %) über die reine Farbe (50 %) bis Weiß (100 %). Von Hand lässt es sich leicht anpassen: Für ein dunkleres Violett senkst du die letzte Zahl.

Der Haken: Die Helligkeit in HSL ist eine Formel, keine Messung dafür, wie hell eine Farbe aussieht. Gelb mit 50 % Helligkeit wirkt weit heller als Blau mit 50 %. Baust du eine Palette mit gleicher HSL-Helligkeit, wirken die Farben nicht gleich hell, und genau deshalb sehen Standard-Regenbogen gestreift aus. Das sichtbare Ergebnis zeigt Regenbogenverlauf.

OKLCH: Farbe, wie du sie siehst

OKLCH stammt von Oklab, einem Farbraum, den Björn Ottosson 2020 veröffentlicht hat und der inzwischen zu CSS gehört. Er nutzt drei Werte: L ist die wahrgenommene Helligkeit von 0 % bis 100 %, C ist die Buntheit (Chroma), wie farbig es ist, von 0 für Grau bis etwa 0,37 für die lebhaftesten Farben, und H ist der Farbtonwinkel. Gleiche L-Werte sehen wirklich gleich hell aus, sodass du eine Eigenschaft ändern kannst, ohne die anderen zu stören.

FarbeHexRGBHSLOKLCH
Violett#7c3aed124 58 237262 83% 58%54.1% 0.247 293
Himmelblau#0ea5e914 165 233199 89% 48%68.5% 0.148 237
Orange#f97316249 115 2225 95% 53%70.5% 0.187 48
Grün#16a34a22 163 74142 76% 36%62.7% 0.17 149
Tinte#11182717 24 39221 39% 11%21% 0.032 265
Dieselben fünf Farben in vier Schreibweisen. HSL- und OKLCH-Werte sind gerundet. Beachte, wie HSL das Grün dunkler als das Violett nennt, während OKLCH zeigt, dass es tatsächlich heller ist.

OKLCH glänzt bei Farbverläufen. Beim Mischen in schlichtem sRGB, dem Standard für Hex-Farben, verläuft die Linie gerade durch den RGB-Würfel, und Farben von gegenüberliegenden Seiten des Farbkreises treffen sich in Grau. Beim Mischen in OKLCH bleibt die Buntheit erhalten, und der Verlauf wandert stattdessen um den Farbkreis.

Dieselben zwei Stopps. In sRGB fällt die Mitte in ein graues Oliv; in OKLCH führt sie über Türkis und Grün. Mehr dazu in trübe Farbverläufe.
css
.band {
  /* Tell the browser which space to blend in */
  background: linear-gradient(in oklch 90deg, #2563eb, #facc15);
}

:root {
  /* One hue, a scale of equal steps in perceived lightness */
  --violet-90: oklch(90% 0.05 293);
  --violet-70: oklch(70% 0.16 293);
  --violet-54: oklch(54.1% 0.247 293);
  --violet-35: oklch(35% 0.16 293);
  --violet-20: oklch(20% 0.08 293);
}
OKLCH macht Abstufungen berechenbar: Ändere L in gleichmäßigen Schritten und senke C an den Enden, damit die Farben darstellbar bleiben.

Welchen Farbcode du wo nutzt

AufgabeBeste SchreibweiseWarum
Marken-Styleguide, Design-ÜbergabeHexKurz, universell, in jedes Tool einfügbar
Transparenz in CSSRGB oder 8-stelliges HexKlarer Alphawert nach dem Schrägstrich
Schnelle Anpassungen von HandHSLFarbton oder Dunkelheit lässt sich leicht verschieben
Paletten, Abstufungen und SchattierungenOKLCHGleiche Schritte sehen gleich aus
FarbverläufeOKLCHMischt ohne graue Mitte
Bildschirme mit erweitertem FarbraumOKLCHErreicht Farben außerhalb von sRGB
DruckCMYK oder SonderfarbenBildschirmcodes drucken nie exakt; siehe Farbverläufe drucken
Keine davon ist falsch. Es kommt darauf an, jede dort zu nutzen, wo sie hilft.

Zum Testen dieser Werte zeigt oklch.com eine Farbe in jeder Schreibweise und warnt, wenn sie außerhalb des Bildschirmumfangs liegt, und die Farbreferenz von MDN deckt jede Syntax ab. Wählst du Farben, statt sie zu schreiben, ist Markenfarben auswählen der nächste Schritt, und Farbkontrast zeigt, wie du prüfst, ob Text lesbar bleibt.

Häufige Fragen

Was bedeuten die sechs Zeichen in einem Hex-Farbcode?

Es sind drei Paare von Ziffern zur Basis 16 für Rot, Grün und Blau. Jedes Paar reicht von 00 (0) bis ff (255), also bedeutet #7c3aed Rot 124, Grün 58, Blau 237.

Ist Hex dasselbe wie RGB?

Ja. Hex ist RGB zur Basis 16 geschrieben. #7c3aed und rgb(124 58 237) sind genau dieselbe Farbe.

Was ist OKLCH?

OKLCH ist eine Farbschreibweise auf Basis des Oklab-Farbraums. Sie beschreibt wahrgenommene Helligkeit, Buntheit und Farbton, sodass gleiche Helligkeitswerte gleich hell aussehen und Paletten und Farbverläufe weit berechenbarer werden.

Wie füge ich einem Hex-Code Transparenz hinzu?

Hänge zwei weitere Ziffern für den Alphawert an. #7c3aed80 hat etwa 50 % Deckkraft und #7c3aedcc etwa 80 %. In CSS kannst du auch rgb(124 58 237 / 0.5) schreiben.

Welchen Farbcode sollte ich in CSS verwenden?

Für einzelne Farben reicht Hex. Nimm OKLCH für Paletten, Abstufungen, Dark Mode und Farbverläufe, wo seine wahrnehmungsgerechte Helligkeit ungleiche Schritte und graue Mitten vermeidet.

Diesen Artikel teilen

Geschrieben von GradientlyVerifiziertes Gradiently-Konto

Das Team hinter Gradiently, einem Designtool rund um Marks: lebendige Farbverläufe, durch die alles, was du gestaltest, nach dir aussieht.

Unser Profil ansehen