Escolheste uma cor de marca em HEX, mas o programador pede o valor em RGB, o CSS aceita HSL e o cliente pergunta se o texto branco sobre esse roxo "passa" nas normas de acessibilidade. Este guia mostra como converter entre os formatos e como calcular o contraste, com exemplos numéricos reais.
rgb(124, 58, 237).Um código HEX escreve-se #RRGGBB. Cada par de carateres representa um canal de cor (vermelho, verde, azul) em hexadecimal, com valores possíveis de 00 a FF — ou seja, 0 a 255 em decimal. Converter é simplesmente reler cada bloco em base 10.
Também existe a forma abreviada de três carateres, #RGB, usada em alguns ficheiros CSS antigos. Para expandir, cada carácter repete-se duas vezes: #F0A torna-se #FF00AA. Se a cor tiver transparência, um HEX de 8 dígitos como #7C3AEDCC acrescenta o canal alfa nos dois últimos carateres.
| Código HEX | R | G | B | RGB |
|---|---|---|---|---|
| #7C3AED | 124 | 58 | 237 | rgb(124,58,237) |
| #0D9488 | 13 | 148 | 136 | rgb(13,148,136) |
| #FFFFFF | 255 | 255 | 255 | rgb(255,255,255) |
| #111528 | 17 | 21 | 40 | rgb(17,21,40) |
Exemplo ilustrativo com valores reais de conversão matemática — não representa nenhuma marca em particular.
hsl(262, 83%, 58%).Na prática, uma ferramenta de conversão mantém os dois formatos sincronizados automaticamente — não precisas de escolher um só; podes ler ambos a partir da mesma cor selecionada.
O cálculo começa pela luminância relativa de cada cor: cada canal sRGB é normalizado entre 0 e 1, linearizado, e combinado com a fórmula L = 0,2126·R + 0,7152·G + 0,0722·B. O rácio de contraste resulta de (L1 + 0,05) / (L2 + 0,05), onde L1 é a luminância da cor mais clara. O resultado varia entre 1:1 (sem contraste algum) e 21:1 (preto sobre branco).
Para componentes gráficos e elementos de interface — como o contorno de um botão, um ícone ou um indicador de estado — 3:1 costuma ser considerado suficiente pelo WCAG. Vale a pena testar sempre a combinação exata de texto e fundo que vais usar, e não confiar apenas na "aparência" no ecrã.
Estas relações partem sempre do Tom (H) em HSL. Se a tua cor base tem H=262° (um roxo), a complementar fica perto de H=82° (um verde-amarelado), enquanto a triádica soma e subtrai 120° para chegar a três pontos distribuídos uniformemente na roda. Tons e matizes obtêm-se mantendo o Tom fixo e apenas subindo ou baixando a Luminosidade.
Um cenário prático: estás a desenhar um botão de destaque numa aplicação e já tens a cor principal da marca. Em vez de escolher a segunda cor "a olho", gerar automaticamente a complementar garante um contraste visual consistente e testável — e depois basta confirmar o rácio WCAG entre o texto do botão e o fundo escolhido.
Converte entre HEX, RGB, HSL e HSV, verifica o contraste WCAG e gera paletas complementares em segundos — tudo gratuito, no navegador.
Experimentar o Conversor de cor →