Marché
Tarifs
Se connecterCommencer
Guide pratiqueCouleur
Couleur

Couleur HSL : la façon la plus simple d’écrire les couleurs en CSS

L’hex dit au navigateur quoi peindre. Le HSL vous dit ce qu’est la couleur : quelle teinte, quelle intensité, quelle clarté. C’est donc le format le plus simple à modifier à la main.

GradientlyCompte Gradiently vérifié·1 octobre 2026·6 min de lecture
Couverture : Floating Era · GR·791P·AD

L’essentiel en bref

  • Une couleur HSL décrit une couleur par sa teinte, sa saturation et sa luminosité plutôt que par des quantités de rouge, de vert et de bleu.
  • La teinte est un angle sur le cercle chromatique, de 0 à 360 degrés : 0 est le rouge, 120 le vert et 240 le bleu.
  • La saturation va de 0 % (gris) à 100 % (couleur pleine), et la luminosité de 0 % (noir) à 100 % (blanc), en passant par 50 % (la teinte pure).
  • Le CSS moderne l’écrit hsl(262 83% 58%), avec un alpha facultatif après une barre oblique, et tous les navigateurs utilisés le prennent en charge.
  • La luminosité HSL ne correspond pas à la clarté perçue : deux couleurs de même luminosité peuvent avoir des contrastes très différents.
Sur cette page
Ce que signifient teinte, saturation et luminositéLa syntaxe HSL en CSSConstruire une gamme en changeant la luminositéLà où le HSL vous trompeConvertir du HSL en hex et inversement

Une couleur HSL s’écrit avec trois nombres : teinte, saturation et luminosité. En CSS, hsl(262 83% 58%) signifie une teinte de 262 degrés (violet), 83 % de saturation (vive) et 58 % de luminosité (un peu au-dessus du milieu). C’est le même violet que #7c3bed, mais vous pouvez le lire. Plus clair ? Augmentez le dernier nombre. Plus doux ? Baissez celui du milieu. Cette propriété, un sens par nombre, fait du HSL la façon la plus simple d’écrire des couleurs à la main.

Ce que signifient teinte, saturation et luminosité

La teinte est une position sur le cercle chromatique, exprimée en degrés. Le rouge est à 0 et à nouveau à 360, le jaune à 60, le vert à 120, le cyan à 180, le bleu à 240 et le magenta à 300. Modifier la teinte fait tourner la couleur tout en gardant son intensité.

Teinte de 0 à 360 degréslinear-gradient(90deg, #ff0000 0%, #ffff00 16.67%, #00ff00 33.33%, #00ffff 50%, #0000ff 66.67%, #ff00ff 83.33%, #ff0000 100%)
Toutes les teintes à 100 % de saturation et 50 % de luminosité. De gauche à droite : 0, 60, 120, 180, 240, 300 et retour à 360.

La saturation est la quantité de couleur. À 0 %, toutes les teintes donnent le même gris ; à 100 %, la couleur est aussi vive que l’écran le permet. La luminosité va du noir à 0 % au blanc à 100 %, avec la teinte pure à 50 %. Le modèle est détaillé plus largement dans teinte, saturation et luminosité, qui explique aussi en quoi le HSB (ou TSV) des applis de design diffère du HSL du CSS.

Teinte0 à 360 (degrés)

Effet d’une modification

Fait tourner la couleur : du violet au bleu au sarcelle
Saturation

Plage

0 % à 100 %

Effet d’une modification

Du gris à la couleur pleine
Luminosité

Plage

0 % à 100 %

Effet d’une modification

Du noir, par la teinte pure à 50 %, jusqu’au blanc
Alpha (facultatif)

Plage

0 à 1, ou 0 % à 100 %

Effet d’une modification

De l’invisible à l’opaque
ValeurPlageEffet d’une modification
Teinte0 à 360 (degrés)Fait tourner la couleur : du violet au bleu au sarcelle
Saturation0 % à 100 %Du gris à la couleur pleine
Luminosité0 % à 100 %Du noir, par la teinte pure à 50 %, jusqu’au blanc
Alpha (facultatif)0 à 1, ou 0 % à 100 %De l’invisible à l’opaque
Quatre nombres, chacun avec un seul rôle. Toute la force du format tient dans cette séparation.

La syntaxe HSL en CSS

Il existe deux écritures. La moderne sépare les valeurs par des espaces et place l’alpha après une barre oblique. L’ancienne utilise des virgules et une fonction hsla() distincte. Les navigateurs acceptent les deux, et hsl() prend désormais l’alpha aussi : hsla() n’est donc plus nécessaire. La référence MDN de hsl() liste toutes les formes.

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%);
}
Les quatre donnent le même violet. La deuxième et la troisième ajoutent 80 % d’opacité.

Construire une gamme en changeant la luminosité

C’est là que le HSL prend tout son sens. Fixez la teinte et la saturation, faites varier la luminosité par paliers, et vous obtenez une famille de teintes et nuances qui vont clairement ensemble. Voici un violet en sept paliers, avec l’hex correspondant à chacun.

hsl(262 83% L) à sept valeurs de luminosité. Les paliers clairs pour les fonds, le milieu pour les boutons, les paliers sombres pour le texte.

Associez cela aux propriétés personnalisées CSS et tout votre thème repose sur deux nombres. Stockez une fois la teinte et la saturation, puis choisissez une luminosité par rôle. Changez la variable de teinte et toute l’interface passe du violet au sarcelle : c’est l’idée derrière les variables CSS pour les thèmes.

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;
}
Chaque couleur de marque dérive de la même teinte : la gamme ne peut jamais sortir de la famille.

Couleurs relatives

Les navigateurs récents prennent aussi en charge la syntaxe des couleurs relatives, qui lit les composantes HSL de n’importe quelle couleur et permet de les ajuster. hsl(from var(--brand) h s calc(l + 15%)) donne une version plus claire de la couleur de marque, même si elle a été définie en hex. Vérifiez la prise en charge actuelle sur caniuse avant de vous y fier, et gardez une valeur de repli simple. Pour mélanger deux couleurs plutôt qu’en ajuster une, l’outil est color-mix() en CSS.

Là où le HSL vous trompe

Le HSL est un réarrangement du RGB, pas un modèle de la vision humaine. Sa luminosité est une simple moyenne du canal le plus fort et du plus faible : elle ignore que nos yeux perçoivent le jaune et le vert comme bien plus clairs que le bleu. Résultat : deux couleurs de luminosité HSL identique peuvent avoir une clarté perçue sans rapport.

Les quatre ont 50 % de luminosité. Sur du blanc, le jaune a un rapport de contraste d’environ 1,07:1 et le bleu d’environ 8,6:1.

Cela compte à deux endroits. D’abord, une gamme construite par paliers de luminosité HSL sera inégale d’une teinte à l’autre : un jaune à 50 % est bien trop clair pour du texte alors qu’un bleu à 50 % passe sans peine. Testez toujours les vraies paires avec un vérificateur de contraste. Ensuite, les dégradés et palettes générées qui font tourner la teinte à luminosité fixe s’éclaircissent et s’assombrissent en passant par le jaune et le bleu.

Le HSL convient pour

  • Lire et modifier des couleurs à la main
  • Les teintes et nuances d’une seule couleur
  • Changer de thème rapidement avec des variables
  • Désaturer une couleur pour un état atténué

Préférez OKLCH pour

  • Des gammes cohérentes entre teintes différentes
  • Un contraste prévisible à partir de la luminosité
  • Des dégradés à la clarté régulière
  • Les palettes générées des design systems

OKLCH garde la même idée accessible (luminosité, intensité, teinte) mais mesure la luminosité comme l’œil. Si vous démarrez un nouveau design system, c’est le meilleur choix par défaut ; si vous modifiez du CSS existant ou voulez un réglage rapide et lisible, le HSL reste parfaitement valable.

Convertir du HSL en hex et inversement

Vous aurez rarement à faire le calcul, car tous les outils de design et les outils de développement des navigateurs convertissent pour vous : cliquez sur une pastille de couleur dans les devtools de Chrome ou Firefox et faites défiler les formats. En coulisse, le HSL est d’abord converti en RGB, et le passage du RGB à l’hex est une simple arithmétique de paires, expliquée dans hex en RGB. Attendez-vous à de petites différences d’arrondi : hsl(262 83% 58%) tombe sur #7c3bed, à un pas du #7c3aed dont vous êtes peut-être parti, car des pourcentages entiers ne peuvent pas atteindre chacune des 16,7 millions de valeurs hex.

Si vous créez dans Gradiently, vous touchez rarement à ces nombres : un Mark porte sa propre palette, et avec Pro, le kit de marque stocke vos couleurs pour que le Designer les applique à votre place.

Demandez au Designer

Décrivez ce qu’il vous faut et l’IA de Gradiently le réalise, sur votre Mark.

Essayer le Designer

Les questions qu’on nous pose

Que signifie HSL ?

Hue, saturation, lightness : teinte, saturation et luminosité. La teinte est l’angle sur le cercle chromatique, la saturation l’intensité de la couleur, et la luminosité sa proximité avec le noir ou le blanc.

Comment écrire une couleur HSL en CSS ?

Utilisez hsl(teinte saturation% luminosité%), par exemple hsl(262 83% 58%). Ajoutez la transparence après une barre oblique : hsl(262 83% 58% / 0.5).

hsla() est-il encore nécessaire ?

Non. hsl() accepte une valeur alpha dans tous les navigateurs actuels : hsla() n’est conservé que pour l’ancien code.

Quelle est la différence entre HSL et RGB ?

Le RGB indique combien de lumière rouge, verte et bleue mélanger ; le HSL indique quelle teinte, quelle intensité et quelle clarté. Ils décrivent les mêmes couleurs, mais le HSL est plus facile à ajuster à la main.

Pourquoi deux couleurs HSL de même luminosité paraissent-elles différentes ?

La luminosité HSL ignore la sensibilité de l’œil à chaque teinte : à valeur égale, le jaune paraît bien plus clair que le bleu. OKLCH corrige cela avec une luminosité perceptuelle.

Partager ce guide

Écrit par GradientlyCompte Gradiently vérifié

L’équipe derrière Gradiently, un outil de création construit autour des Marks : des dégradés vivants qui donnent à tout ce que vous créez votre propre signature.

Voir notre profil

Sur cette page

Ce que signifient teinte, saturation et luminositéLa syntaxe HSL en CSSConstruire une gamme en changeant la luminositéLà où le HSL vous trompeConvertir du HSL en hex et inversement

Partager ce guide

À suivre dans Couleur

OKLCH expliqué : la couleur perceptuelle pour les designers

Pour aller plus loin

Tous les guides : Couleur
Couleur

OKLCH expliqué : la couleur perceptuelle pour les designers

6 min de lecture

HSL promettait une couleur lisible et y est presque parvenu. OKLCH garde la partie lisible et corrige le mensonge sur la luminosité, et c’est pourquoi les design systems l’adoptent.

Couleur

Hex en RGB : convertir un code couleur à la main ou en code

6 min de lecture

Un code hex n’est que trois nombres écrits en base 16. Une fois les paires repérées, la conversion à la main prend quelques secondes, et la version en code tient en quatre lignes.

Couleur

Teinte, saturation, luminosité (HSB) expliquées simplement

6 min de lecture

Les codes hex sont faits pour les machines. Teinte, saturation et luminosité, c’est ainsi que les gens pensent vraiment la couleur : quelle couleur, quelle force, quelle clarté. Maîtrisez ces trois curseurs et tous les sélecteurs de couleur deviennent clairs.

Trouvez le style qui n’est qu’à vous.

Chaque Mark est un fond vivant avec un seul propriétaire. Essayez un Mark encore disponible et réservez le vôtre quand vous le sentez.

Commencer à créer

Vérifier un certificat

Saisissez un numéro de certificat ou le code d’un Mark pour voir à qui il appartient.

Fonctionne avec ChatGPT et Claude

Demandez une création à votre IA. Elle la réalise dans votre Mark, prête à modifier.

ChatGPTClaude
Comment se connecter

Produit

  • Marché
  • Explorer
  • Tarifs
  • Certificats

Apprendre

  • Guide pratique
  • Centre d’aide
  • Nouveautés

Développeurs

  • Vue d’ensemble
  • ChatGPT et Claude
  • Référence de l’API
  • Clés API

Entreprise

  • À propos
  • Nous contacter
  • Se connecter

Mentions légales

  • Conditions
  • Confidentialité
  • Remboursements
  • Protection des Marks
  • Cookies
  • Toutes les politiques
Parcourez les lettres. Chacune porte un vrai Mark.Touchez une lettre pour voir son Mark.Un seul nom. Dix Marks à l’intérieur.
© 2026 Gradiently