Markedet
Priser
Log indStart
DesignguidenFarver
Farver

HSL-farver: den venligste måde at skrive farver i CSS

Hex fortæller browseren, hvad den skal male. HSL fortæller dig, hvad farven er: hvilken nuance, hvor kraftig, hvor lys. Det gør det til det nemmeste format at redigere i hånden.

GradientlyVerificeret Gradiently-konto·1. oktober 2026·5 min. læsning
Forside: Floating Era · GR·791P·AD

Kort fortalt

  • En HSL-farve beskriver en farve ud fra nuance, mætning og lyshed i stedet for mængder af rød, grøn og blå.
  • Nuance er en vinkel på farvecirklen fra 0 til 360 grader, hvor 0 er rød, 120 er grøn og 240 er blå.
  • Mætning går fra 0% (grå) til 100% (fuld farve), og lyshed går fra 0% (sort) gennem 50% (den rene nuance) til 100% (hvid).
  • Moderne CSS skriver det som hsl(262 83% 58%), med en valgfri alfa efter en skråstreg, og alle browsere i brug understøtter det.
  • HSL-lyshed er ikke, hvor lys en farve ser ud for mennesker, så to farver med samme lyshed kan have meget forskellig kontrast.
På denne side
Hvad nuance, mætning og lyshed betyderHSL-syntaks i CSSByg en farveskala ved at ændre lyshedenHvor HSL snyder digOmregning fra HSL til hex og tilbage

En HSL-farve skrives som tre tal: nuance, mætning og lyshed. I CSS betyder hsl(262 83% 58%) en nuance på 262 grader (violet), 83% mætning (kraftig) og 58% lyshed (lidt over midten). Det er den samme violet som #7c3bed, men du kan læse den. Vil du have den lysere? Hæv det sidste tal. Blødere? Sænk det midterste. Den ene egenskab, én betydning pr. tal, er grunden til, at HSL er den venligste måde at skrive farver i hånden.

Hvad nuance, mætning og lyshed betyder

Nuance er en position på farvecirklen, angivet i grader. Rød ligger på 0 og igen på 360, gul på 60, grøn på 120, cyan på 180, blå på 240 og magenta på 300. Når du flytter nuancen, roterer farven, mens dens styrke bevares.

Nuance fra 0 til 360 graderlinear-gradient(90deg, #ff0000 0%, #ffff00 16.67%, #00ff00 33.33%, #00ffff 50%, #0000ff 66.67%, #ff00ff 83.33%, #ff0000 100%)
Alle nuancer ved 100% mætning og 50% lyshed. Læs fra venstre mod højre: 0, 60, 120, 180, 240, 300 og tilbage til 360.

Mætning er, hvor meget farve der er. Ved 0% er alle nuancer den samme grå; ved 100% er den så kraftig, som skærmen tillader. Lyshed går fra sort ved 0% til hvid ved 100%, med den rene nuance ved 50%. Modellen gennemgås bredere i nuance, mætning og lysstyrke, som også forklarer, hvordan HSB i designprogrammer adskiller sig fra HSL i CSS.

Nuance0 til 360 (grader)

Hvad en ændring gør

Roterer farven: violet til blå til petrol
Mætning0% til 100%

Hvad en ændring gør

Fra grå til fuld farve
Lyshed0% til 100%

Hvad en ændring gør

Fra sort, gennem den rene nuance ved 50%, til hvid
Alfa (valgfri)

Interval

0 til 1 eller 0% til 100%

Hvad en ændring gør

Fra usynlig til uigennemsigtig
VærdiIntervalHvad en ændring gør
Nuance0 til 360 (grader)Roterer farven: violet til blå til petrol
Mætning0% til 100%Fra grå til fuld farve
Lyshed0% til 100%Fra sort, gennem den rene nuance ved 50%, til hvid
Alfa (valgfri)0 til 1 eller 0% til 100%Fra usynlig til uigennemsigtig
Fire tal, hver med én opgave. Den adskillelse er hele charmen.

HSL-syntaks i CSS

Der er to stavemåder. Den moderne adskiller værdierne med mellemrum og sætter alfa efter en skråstreg. Den ældre bruger kommaer og en separat hsla()-funktion. Browsere accepterer begge, og hsl() tager nu også alfa, så hsla() er ikke længere nødvendig. MDN’s reference til hsl() viser alle former.

css
.button {
  /* modern syntax */
  background: hsl(262 83% 58%);

  /* with 80% opacity */
  background: hsl(262 83% 58% / 0.8);

  /* older comma syntax, still valid */
  background: hsla(262, 83%, 58%, 0.8);

  /* hue can carry a unit */
  background: hsl(262deg 83% 58%);
}
Alle fire er den samme violet. Den anden og tredje tilføjer 80% dækkevne.

Byg en farveskala ved at ændre lysheden

Det er her, HSL gør sig fortjent til sin plads. Hold nuance og mætning fast, gå trinvis gennem lysheden, og du har en familie af toner og skygger, der tydeligvis hører sammen. Her er én violet i syv trin med den hex, hver af dem omregnes til.

hsl(262 83% L) ved syv lyshedsværdier. Lyse trin til baggrunde, midten til knapper, mørke trin til tekst.

Kombinér det med CSS custom properties, så hænger hele dit tema på to tal. Gem nuance og mætning én gang, og vælg så en lyshed pr. rolle. Skift nuancevariablen, og hele brugerfladen går fra violet til petrol, hvilket er idéen bag CSS-variabler til temaer.

css
:root {
  --brand-h: 262;
  --brand-s: 83%;

  --brand-50:  hsl(var(--brand-h) var(--brand-s) 95%);
  --brand-200: hsl(var(--brand-h) var(--brand-s) 85%);
  --brand-500: hsl(var(--brand-h) var(--brand-s) 58%);
  --brand-800: hsl(var(--brand-h) var(--brand-s) 30%);
}

/* a teal theme is one line */
.theme-teal {
  --brand-h: 175;
}
Alle brandfarver udspringer af den samme nuance, så skalaen aldrig kan glide ud af familien.

Relative farver

Nyere browsere understøtter også relativ farvesyntaks, som læser HSL-delene af en hvilken som helst farve og lader dig justere dem. hsl(from var(--brand) h s calc(l + 15%)) giver en lysere version af brandfarven, uanset hvad den er, selv hvis den blev defineret i hex. Tjek den aktuelle understøttelse på caniuse, før du stoler på det, og behold en enkel reserveløsning. Til at blande to farver i stedet for at justere én er color-mix() i CSS værktøjet.

Hvor HSL snyder dig

HSL er en omarrangering af RGB, ikke en model af menneskets syn. Dens lyshed er et simpelt gennemsnit af den lyseste og den svageste kanal, så den ignorerer, at vores øjne ser gul og grøn som langt lysere end blå. Resultatet: to farver med identisk HSL-lyshed kan se helt forskellige ud i lysstyrke.

Alle fire har 50% lyshed. Mod hvid har den gule et kontrastforhold på omkring 1,07:1 og den blå omkring 8,6:1.

Det betyder noget to steder. For det første bliver en skala bygget ved at gå trinvis gennem HSL-lysheden ujævn på tværs af nuancer: en gul ved 50% er alt for lys til tekst, mens en blå ved 50% let består. Test altid rigtige par med en kontrasttjekker. For det andet bliver gradienter og genererede paletter, der roterer nuancen ved fast lyshed, lysere og mørkere, når de passerer gul og blå.

HSL er god til

  • At læse og redigere farver i hånden
  • Toner og skygger af én nuance
  • Hurtige temaskift med variabler
  • At afmætte en farve til en dæmpet tilstand

Brug hellere OKLCH til

  • Skalaer, der matcher på tværs af nuancer
  • Forudsigelig kontrast ud fra en lyshedsværdi
  • Gradienter med jævn lysstyrke
  • Genererede paletter til designsystemer

OKLCH beholder den samme venlige idé (lyshed, farvestyrke, nuance), men måler lyshed, som øjnene gør. Starter du et nyt designsystem, er den det bedre standardvalg; redigerer du eksisterende CSS eller vil lave en hurtig, læselig justering, er HSL stadig helt fin.

Omregning fra HSL til hex og tilbage

Du behøver sjældent at regne selv, for alle designværktøjer og browserens udviklerværktøjer omregner for dig: klik på en farveprøve i udviklerværktøjerne i Chrome eller Firefox, og skift mellem formaterne. Bag kulisserne omregnes HSL først til RGB, og RGB til hex er simpel regning med par, forklaret i hex til RGB. Regn med bittesmå afrundingsforskelle: hsl(262 83% 58%) lander på #7c3bed, ét trin fra den #7c3aed, du måske startede med, fordi hele procenter ikke kan ramme hver eneste af de 16,7 millioner hexværdier.

Designer du i Gradiently, rører du sjældent disse tal: en Mark har sin egen palet, og med Pro gemmer brandkittet dine farver, så Designer anvender dem for dig.

Spørg Designer

Beskriv, hvad du har brug for, så laver Gradiently-AI’en det på din Mark.

Prøv Designer

Spørgsmål, folk stiller

Hvad står HSL for?

Hue, saturation og lightness: nuance, mætning og lyshed. Nuance er vinklen på farvecirklen, mætning er, hvor kraftig farven er, og lyshed er, hvor tæt den er på sort eller hvid.

Hvordan skriver jeg en HSL-farve i CSS?

Brug hsl(nuance mætning% lyshed%), for eksempel hsl(262 83% 58%). Tilføj gennemsigtighed efter en skråstreg: hsl(262 83% 58% / 0.5).

Er hsla() stadig nødvendig?

Nej. hsl() accepterer en alfaværdi i alle aktuelle browsere, så hsla() findes kun af hensyn til ældre kode.

Hvad er forskellen på HSL og RGB?

RGB siger, hvor meget rødt, grønt og blåt lys der skal blandes; HSL siger, hvilken nuance, hvor kraftig og hvor lys. De beskriver de samme farver, men HSL er nemmere at justere i hånden.

Hvorfor ser to HSL-farver med samme lyshed forskellige ud?

HSL-lyshed ignorerer, hvor følsomme øjnene er over for hver nuance, så gul ser langt lysere ud end blå ved samme værdi. OKLCH løser det med perceptuel lyshed.

Del denne guide

Skrevet af GradientlyVerificeret Gradiently-konto

Holdet bag Gradiently, et designværktøj bygget om Marks: levende gradienter, der får alt, du designer, til at ligne dig.

Se vores profil

På denne side

Hvad nuance, mætning og lyshed betyderHSL-syntaks i CSSByg en farveskala ved at ændre lyshedenHvor HSL snyder digOmregning fra HSL til hex og tilbage

Del denne guide

Næste om Farver

OKLCH forklaret: perceptuel farve for designere

Læs videre

Alle guides om Farver
Farver

OKLCH forklaret: perceptuel farve for designere

5 min. læsning

HSL lovede læsbar farve og leverede næsten. OKLCH beholder den læsbare del og retter løgnen om lyshed, og derfor går designsystemer over til det.

Farver

Hex til RGB: omregn farvekoder i hånden eller i kode

5 min. læsning

En hexkode er bare tre tal skrevet i 16-talssystemet. Når du kan se parrene, tager det sekunder at omregne i hånden, og kodeversionen er fire linjer.

Farver

Nuance, mætning og lysstyrke (HSB) forklaret enkelt

5 min. læsning

Hexkoder er til maskiner. Nuance, mætning og lysstyrke er sådan, folk faktisk tænker på farve: hvilken farve, hvor stærk, hvor lys. Lær de tre drejeknapper, så giver enhver farvevælger mening.

Find det look, der kun er dit.

Hver Mark er en levende baggrund med én ejer. Prøv en ledig Mark, og sikr dig din, når det føles rigtigt.

Begynd at designe

Tjek et certifikat

Skriv et certifikatnummer eller en Marks kode for at se, hvem der ejer den.

Virker med ChatGPT og Claude

Bed din AI om et design. Den laver det i din Mark, klar til at redigere.

ChatGPTClaude
Sådan forbinder du

Produkt

  • Markedet
  • Udforsk
  • Priser
  • Certifikater

Lær

  • Designguiden
  • Hjælpecenter
  • Nyheder

Udviklere

  • Oversigt
  • ChatGPT og Claude
  • API-reference
  • API-nøgler

Virksomhed

  • Om os
  • Kontakt os
  • Log ind

Juridisk

  • Vilkår
  • Privatliv
  • Refusion
  • Mark-beskyttelse
  • Cookies
  • Alle politikker
Bevæg dig hen over bogstaverne. Hvert af dem bærer en ægte Mark.Rør ved et bogstav for at se dets Mark.Ét navn. Ti Marks inden i.
© 2026 Gradiently