Convertisseur de couleurs et vérificateur de contraste
Convertissez les couleurs entre HEX, RGB, HSL et HSV, avec un vérificateur de ratio de contraste WCAG.
Chargement de Convertisseur de couleurs et vérificateur de contraste… Si rien ne se passe, activez JavaScript.
La représentation numérique des couleurs a évolué à travers plusieurs systèmes concurrents, chacun optimisé pour un usage différent. Le format hexadécimal #RRGGBB est apparu aux débuts du HTML dans les années 1990, lorsque le web de Tim Berners-Lee avait besoin d'un moyen concis de spécifier les 16 millions de couleurs que les écrans 24 bits pouvaient afficher. Le format encode les intensités des canaux rouge, vert et bleu sous forme de nombres hexadécimaux à deux chiffres, ce qui le rend compact pour le balisage tout en restant lisible par l'humain. RGB (rouge, vert, bleu) est le modèle de couleur additif utilisé par tous les écrans numériques : mélanger de la lumière à pleine intensité produit du blanc, l'inverse du comportement de l'encre. HSL (teinte, saturation, luminosité) et HSV (teinte, saturation, valeur) sont des transformations cylindriques du RGB qui correspondent davantage à la perception humaine des couleurs, ce qui les rend indispensables pour construire des palettes de design systématiques.
Exemples
#ff5733
rgb(255, 87, 51)
Chaque paire hexadécimale correspond à un canal rouge, vert, bleu (0-255).
rgb(255, 87, 51)
hsl(11, 100%, 60%)
La même couleur exprimée en teinte, saturation, luminosité.
Questions fréquentes
Des données sont-elles envoyées à un serveur lorsque j'utilise cet outil ?
Comment fonctionne le format de couleur hexadécimal ?
Quand dois-je utiliser HSL plutôt que RGB dans mon CSS ?
Quel ratio de contraste WCAG me faut-il pour mon site web ?
Pourquoi les mêmes valeurs HSL paraissent-elles parfois différentes selon les navigateurs ?
Quelle est l'histoire des couleurs web ?
Puis-je convertir des couleurs avec transparence ?
En quoi cet outil diffère-t-il des DevTools du navigateur ?
Quelles valeurs de couleur un développeur devrait-il connaître par cœur ?
Quelle est une erreur fréquente de débutant avec les couleurs hexadécimales ?
À propos de Convertisseur de couleurs et vérificateur de contraste
Les designers utilisent les codes hexadécimaux pour rédiger des feuilles de style CSS et choisir des couleurs de marque dans des outils comme Figma ou Sketch. Les développeurs front-end passent au RGB ou au RGBA lorsqu'ils ont besoin d'appliquer une opacité ou d'effectuer un mélange de couleurs programmatique dans canvas ou WebGL. Le HSL est privilégié pour générer des échelles de couleurs de façon algorithmique ; par exemple, en gardant la teinte fixe tout en faisant varier la luminosité par paliers afin de créer une rampe de nuances cohérente. Le HSV est le format natif de la plupart des sélecteurs de couleurs, car son axe de valeur correspond intuitivement au curseur de luminosité. Les ingénieurs en accessibilité s'appuient sur les calculs de ratio de contraste pour garantir que le texte reste lisible pour les utilisateurs malvoyants ou daltoniens, une exigence imposée par les WCAG 2.1 et appliquée aux sites du secteur public dans l'ensemble de l'UE et des États-Unis.
Cet outil convertit toute couleur que vous saisissez vers les quatre notations simultanément et calcule également le ratio de contraste WCAG entre votre couleur et tout arrière-plan que vous indiquez. Tout s'exécute dans votre navigateur sans aucune requête vers un serveur. Vous pouvez coller un code hexadécimal, saisir des valeurs RGB ou entrer des coordonnées HSL, et l'outil vous montre instantanément toutes les représentations équivalentes. Le vérificateur de contraste vous donne un résultat réussi ou échoué par rapport aux seuils AA et AAA des WCAG.
Une erreur courante consiste à confondre HSL et HSV : tous deux utilisent la teinte et la saturation, mais leur troisième axe diffère de manière importante. En HSL, une luminosité de 100 % produit toujours du blanc, quelles que soient la teinte ou la saturation. En HSV, une valeur de 100 % produit la teinte pure (luminosité maximale), et non du blanc. Une autre erreur fréquente est d'oublier que la forme abrégée hexadécimale #RGB se développe en #RRGGBB en doublant les chiffres, de sorte que #f09 signifie #ff0099, et non #f00009. Lorsque vous travaillez avec l'opacité, notez que le CSS accepte aussi bien l'hexadécimal à huit chiffres (#RRGGBBAA) que la fonction rgba(), mais certains navigateurs et outils de design plus anciens ne prennent en charge que la forme rgba().
Comment 16 millions de couleurs ont fini dans un code de six caractères
Avant le web, la couleur sur les écrans d'ordinateur était une affaire de contraintes sévères. La carte graphique CGA d'origine, de 1981, n'offrait que 16 couleurs, soigneusement choisies pour être distinguables sur les moniteurs de l'époque. La norme EGA a porté ce nombre à 64, et le VGA a fini par offrir 256 couleurs issues d'une palette fixe. Ce n'est que lorsque les écrans en couleurs vraies 24 bits sont devenus abordables au début des années 1990 que le spectre complet de 16 777 216 couleurs est devenu accessible au matériel grand public, et le web a eu besoin d'une notation pour les décrire toutes.
Les ingénieurs de Netscape Navigator ont choisi l'hexadécimal parce qu'il correspondait parfaitement au matériel sous-jacent : chacun des trois canaux de couleur 8 bits (0-255) peut s'exprimer par exactement deux chiffres hexadécimaux (00-FF), donnant un code de six caractères compact et sans ambiguïté. Le format est apparu dans Netscape 1.1 vers 1994 et a été rapidement copié par Internet Explorer. Le W3C l'a formalisé dans la spécification CSS1 en 1996, ancrant sa place comme abréviation universelle de la couleur web. Les mots-clés de couleurs nommées (red, blue, aqua) ont été hérités directement des 16 couleurs VGA standard, avec des couleurs supplémentaires tirées du système de fenêtrage X11 utilisé sur les stations de travail Unix.
Le basculement vers des espaces colorimétriques perceptuellement uniformes constitue le chapitre suivant de l'histoire de la couleur web. Le RGB et le HSL traditionnels sont mathématiquement simples mais perceptuellement non uniformes : un pas de dix unités de luminosité en HSL paraît très différent selon la teinte, ce qui complique les calculs fiables d'accessibilité. La spécification CSS Color Level 4 introduit OKLCH et OKLAB, des espaces colorimétriques conçus pour que des différences numériques égales correspondent à des différences perçues égales. Ces espaces sont déjà pris en charge par les navigateurs modernes et représentent l'évolution la plus marquante de la manière dont les développeurs spécifient la couleur depuis l'introduction du format hexadécimal d'origine il y a trente ans.