HTML: Cores HTML

Cores em HTML podem ser representadas de várias formas. Dominar diferentes métodos de representação de cores dá a você controle flexível e preciso sobre cada pixel do seu design web.

1. Visão Geral da Representação de Cores

Existem três métodos principais de representação de cores em HTML e CSS: nomes de cores, hexadecimal e RGB. Todos podem definir cores, mas cada um tem seus próprios casos de uso:

▶ Exemplo

HTML
<!-- Os três representam um fundo vermelho -->
<div style="background-color: red;">Nome da cor: red</div>
<div style="background-color: #FF0000;">Hex: #FF0000</div>
<div style="background-color: rgb(255,0,0);">RGB: rgb(255,0,0)</div>
▶ Experimente

2. Nomes de Cores

O HTML suporta mais de 140 nomes de cores padrão. Os mais usados incluem: red, blue, green, black, white, gray, orange, purple, yellow e muitos outros. Usar nomes de cores é a abordagem mais intuitiva — sem necessidade de memorizar regras de codificação.

(1) Nomes de Cores Comuns

Nome da Cor Hex RGB Descrição
red #FF0000 rgb(255,0,0) Vermelho
green #008000 rgb(0,128,0) Verde (padrão)
lime #00FF00 rgb(0,255,0) Verde lima (brilhante)
blue #0000FF rgb(0,0,255) Azul
black #000000 rgb(0,0,0) Preto
white #FFFFFF rgb(255,255,255) Branco
gray #808080 rgb(128,128,128) Cinza
silver #C0C0C0 rgb(192,192,192) Prata
orange #FFA500 rgb(255,165,0) Laranja
yellow #FFFF00 rgb(255,255,0) Amarelo
purple #800080 rgb(128,0,128) Roxo
cyan #00FFFF rgb(0,255,255) Ciano
magenta #FF00FF rgb(255,0,255) Magenta
pink #FFC0CB rgb(255,192,203) Rosa
brown #A52A2A rgb(165,42,42) Marrom
gold #FFD700 rgb(255,215,0) Dourado
navy #000080 rgb(0,0,128) Azul marinho
teal #008080 rgb(0,128,128) Azul petróleo
olive #808000 rgb(128,128,0) Verde oliva
coral #FF7F50 rgb(255,127,80) Coral
tomato #FF6347 rgb(255,99,71) Tomate
skyblue #87CEEB rgb(135,206,235) Azul céu
violet #EE82EE rgb(238,130,238) Violeta
📌 Dica: Nomes de cores são simples e intuitivos, ótimos para prototipagem rápida e ensino. No entanto, em ambientes de produção, os nomes de cores têm uma seleção limitada e falta de precisão — a notação hexadecimal ou RGB é recomendada.


3. Hexadecimal (Hex)

Cores hexadecimais começam com # no formato #RRGGBB, onde RR representa o valor de vermelho, GG o valor de verde e BB o valor de azul, com faixa de 00 a FF (hexadecimal). Se cada par tiver dígitos idênticos, você pode abreviar para três caracteres #RGB.

(1) Cores Hexadecimais Comuns

Cor Hex Valores RGB Descrição
Vermelho Puro #FF0000 255,0,0 Canal vermelho máximo
Verde Puro #00FF00 0,255,0 Canal verde máximo
Azul Puro #0000FF 0,0,255 Canal azul máximo
Preto Puro #000000 0,0,0 Todos os canais 0
Branco Puro #FFFFFF 255,255,255 Todos os canais máximo
Azul Céu #87CEEB 135,206,235 Azul claro
Azul Escuro #00008B 0,0,139 Azul profundo
Coral #FF7F50 255,127,80 Laranja-rosa
Tomate #FF6347 255,99,71 Vermelho-laranja
Dourado #FFD700 255,215,0 Amarelo dourado
Verde Oliva #808000 128,128,0 Amarelo escuro
Marrom #800000 128,0,0 Vermelho escuro
Azul Marinho #000080 0,0,128 Azul profundo
Violeta #EE82EE 238,130,238 Roxo-rosa
Azul Petróleo #00CED1 0,206,209 Ciano escuro

▶ Exemplo

HTML
<!-- Hex de seis dígitos -->
<div style="background-color: #FF5733;">#FF5733 (laranja)</div>
<div style="background-color: #33A1FF;">#33A1FF (azul)</div>
<div style="background-color: #2ECC71;">#2ECC71 (verde)</div>

<!-- Abreviação de três caracteres (quando cada par é igual) -->
<div style="background-color: #F00;">#F00 equivale a #FF0000 (vermelho)</div>
<div style="background-color: #0F0;">#0F0 equivale a #00FF00 (verde)</div>
<div style="background-color: #00F;">#00F equivale a #0000FF (azul)</div>
▶ Experimente

4. RGB e RGBA

A função rgb(vermelho, verde, azul) usa valores decimais de 0 a 255 para representar os canais vermelho, verde e azul. Comparado ao hexadecimal, o RGB é mais próximo da compreensão intuitiva humana dos números. rgba() adiciona um canal Alpha de transparência sobre o RGB.

(1) Valores RGB e Mapeamento de Cores

Valor RGB Cor Descrição
rgb(255, 0, 0) Vermelho Canal vermelho máximo
rgb(0, 255, 0) Verde Canal verde máximo
rgb(0, 0, 255) Azul Canal azul máximo
rgb(255, 255, 0) Amarelo Vermelho + Verde
rgb(0, 255, 255) Ciano Verde + Azul
rgb(255, 0, 255) Magenta Vermelho + Azul
rgb(255, 255, 255) Branco Todos os canais máximo
rgb(0, 0, 0) Preto Todos os canais 0
rgb(128, 128, 128) Cinza Todos os canais médios
rgb(255, 165, 0) Laranja Vermelho + verde parcial
rgb(255, 192, 203) Rosa Vermelho + pequenas quantidades de verde/azul
rgb(165, 42, 42) Marrom Vermelho escuro + pouco verde
rgb(0, 128, 128) Azul Petróleo Verde + Azul igualmente
rgb(128, 0, 128) Roxo Vermelho + Azul igualmente
rgb(0, 0, 128) Azul Marinho Azul profundo

▶ Exemplo

HTML
<div style="background-color: rgb(255, 99, 71);">
rgb(255, 99, 71) — Tomate
</div>
<div style="background-color: rgb(60, 179, 113);">
rgb(60, 179, 113) — Verde Mar Médio
</div>

<!-- rgba adiciona transparência, último parâmetro de 0 a 1 -->
<div style="background-color: rgba(255, 0, 0, 0.3);">
Vermelho semitransparente (30% de opacidade)
</div>
<div style="background-color: rgba(0, 0, 255, 0.6);">
Azul semitransparente (60% de opacidade)
</div>
▶ Experimente

5. HSL

hsl(matiz, saturação, luminosidade) é um modelo de cor mais alinhado com a intuição humana. A matiz é o ângulo da cor (0—360 graus), a saturação é a intensidade (porcentagem) e a luminosidade é o brilho (porcentagem). Da mesma forma, hsla() suporta transparência.

(1) Roda de Cores HSL

Ângulo Cor Valor HSL Descrição
Vermelho hsl(0, 100%, 50%) Início da matiz
30° Laranja hsl(30, 100%, 50%) Transição Vermelho→Amarelo
60° Amarelo hsl(60, 100%, 50%) Vermelho + Verde
90° Verde-amarelo hsl(90, 100%, 50%) Transição Amarelo→Verde
120° Verde hsl(120, 100%, 50%) Ponto central da matiz
150° Verde-ciano hsl(150, 100%, 50%) Transição Verde→Ciano
180° Ciano hsl(180, 100%, 50%) Verde + Azul
210° Azul céu hsl(210, 100%, 50%) Transição Ciano→Azul
240° Azul hsl(240, 100%, 50%) Ponto final da matiz
270° Roxo hsl(270, 100%, 50%) Transição Azul→Vermelho
300° Magenta hsl(300, 100%, 50%) Azul + Vermelho
330° Rosa hsl(330, 100%, 50%) Transição Magenta→Vermelho
360° Vermelho hsl(360, 100%, 50%) Volta ao início

(2) Ajustes de Saturação e Luminosidade

Ajuste Efeito Exemplo
Saturação 100% Mais vívido hsl(0, 100%, 50%) = Vermelho puro
Saturação 50% Mais suave hsl(0, 50%, 50%) = Vermelho escuro
Saturação 0% Cinza hsl(0, 0%, 50%) = Cinza
Luminosidade 50% Normal hsl(0, 100%, 50%) = Vermelho puro
Luminosidade 100% Totalmente branco hsl(0, 100%, 100%) = Branco
Luminosidade 0% Totalmente preto hsl(0, 100%, 0%) = Preto

▶ Exemplo

HTML
<!-- Exemplos de mistura de cores HSL -->
<div style="background-color: hsl(0, 100%, 50%);">
hsl(0, 100%, 50%) — Vermelho puro
</div>
<div style="background-color: hsl(120, 100%, 50%);">
hsl(120, 100%, 50%) — Verde puro
</div>
<div style="background-color: hsl(240, 100%, 50%);">
hsl(240, 100%, 50%) — Azul puro
</div>
<div style="background-color: hsl(200, 80%, 60%);">
hsl(200, 80%, 60%) — Azul suave
</div>

<!-- hsla adiciona transparência -->
<div style="background-color: hsla(0, 100%, 50%, 0.4);">
hsla(0, 100%, 50%, 0.4) — Vermelho semitransparente
</div>
▶ Experimente
💡 Escolha do Designer: O HSL é mais amigável para designers. Basta ajustar a matiz para percorrer diferentes cores, ajustar a saturação para controlar a vivacidade e modificar a luminosidade para controlar o brilho — três dimensões são tudo o que você precisa para gerar facilmente uma paleta de cores completa.

❓ Perguntas Frequentes

P Qual é a diferença entre hexadecimal (#FF5733) e RGB (rgb(255, 87, 51))?
R Ambos representam a mesma cor, apenas escritos de forma diferente. Hex usa 6 dígitos hexadecimais, com cada par representando os canais vermelho, verde e azul (00-FF). RGB usa três números decimais de 0-255. Hex é mais conciso (6 caracteres), RGB é mais intuitivo (valores diretamente visíveis). Na prática, hex é mais comum; use RGBA quando precisar de transparência.
P Quando uso RGBA? Como calculo a transparência?
R RGBA adiciona um canal Alpha (transparência) ao RGB, com valores de 0 (totalmente transparente) a 1 (totalmente opaco). Casos de uso:1)Fundos semitransparentes (overlays, efeito de vidro fosco); 2)Sobreposição de texto em imagens para legibilidade; 3)Fundos de dicas de ferramentas. Cálculo de transparência:rgba(0, 0, 0, 0.5) significa 50% de preto transparente.
P HSL é melhor que RGB?
R HSL (matiz, saturação, luminosidade) é mais intuitivo para humanos. RGB exige ajustar três valores simultaneamente para obter a cor desejada, enquanto HSL permite:1)Apenas ajustar a matiz (0-360 graus) para percorrer todo o espectro; 2)Apenas ajustar a saturação para controlar vivacidade; 3)Apenas ajustar a luminosidade para controlar brilho. Designers geralmente usam HSL para gerar esquemas de cores; desenvolvedores geralmente usam RGB/hex.
P Posso usar nomes de cores em português, como vermelho?
R Não. HTML/CSS suporta apenas nomes de cores em inglês (como red, blue, green), e existem apenas 147 nomes de cores padrão. Nomes de cores em português (como vermelho) não serão reconhecidos. Recomendações:1)Use nomes de cores em inglês para cenários simples; 2)Use hex ou RGB para precisão; 3)Use variáveis CSS quando gerenciar muitas cores.

📖 Resumo


📝 Exercícios

  1. Paleta de Cores: Crie três blocos de cores usando três representações de cores diferentes (nome de cor, hex, RGB). Cada bloco deve ter 100x100px, exibidos lado a lado.
  2. Gradiente de Transparência: Use rgba() para criar um efeito de gradiente horizontal onde o fundo transiciona de totalmente opaco para totalmente transparente (dica: use background: linear-gradient()).
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%