CSS: Variáveis CSS
Última atualização: 2026-10-13
Variáveis CSS (Propriedades Personalizadas) permitem definir valores reutilizáveis no CSS, semelhantes a variáveis em linguagens de programação. Usar variáveis CSS pode reduzir muito o código repetitivo e facilitar o gerenciamento de tokens de design como cores de tema e espaçamento.
1. Definindo Variáveis
Variáveis CSS usam nomes de propriedades personalizados (começando com --) para declarar:
▶ Exemplo
▶ Experimente2. Usando Variáveis
Referencie variáveis usando a função var():
▶ Exemplo
▶ Experimente3. Escopo de Variáveis
O escopo de variáveis CSS é determinado por onde são definidas:
Variáveis globais — definidas em :root:
▶ Exemplo
▶ ExperimenteVariáveis locais — definidas em um seletor específico, efetivas apenas naquele seletor e seus filhos:
▶ Exemplo
▶ Experimente4. Herança de Variáveis
Variáveis CSS herdam como propriedades CSS normais:
▶ Exemplo
▶ Experimente5. Valores de Reserva para var()
var() pode definir um segundo parâmetro como reserva — usado quando a variável é indefinida:
▶ Exemplo
▶ Experimente6. Modificando Variáveis com JavaScript
data-theme no <html>, use variáveis no CSS para referenciar diferentes cores, e uma linha de código JS pode mudar o esquema de cores do site inteiro.
Uma grande vantagem das variáveis CSS é que podem ser modificadas dinamicamente via JavaScript:
▶ Exemplo
▶ Experimente7. Implementando Troca de Tema
Variáveis CSS são a melhor maneira de implementar troca de tema como "modo escuro":
▶ Exemplo
▶ ExperimenteDepois troque temas via JavaScript:
document.documentElement.setAttribute('data-theme', 'dark');
// ou
document.documentElement.setAttribute('data-theme', 'light');
8. Vantagens das Variáveis CSS
- Reduz código repetitivo: Uma variável usada em muitos lugares, mude uma vez para atualizar todas
- Modificável em tempo de tempo: Pode ser alterada dinamicamente via JS para troca de tema
- Controle de escopo: Pode sobrescrever valores de variáveis em contêineres específicos
- Semântico:
--primary-coloré mais fácil de entender que#3498db
9. Diferenças dos Pré-processadores
Variáveis CSS (Propriedades Personalizadas) diferem das variáveis Sass/Less:
| Recurso | Variáveis CSS | Variáveis Sass |
|---|---|---|
| Modificação em tempo de execução | ✅ Sim | ❌ Fixo após compilação |
| Escopo | ✅ Herança CSS | ❌ Valores fixos após compilação |
| Navegador | Suporte a navegadores modernos | Sem suporte de navegador necessário (pré-compilado) |
| Interação JS | ✅ Legível/gravável | ❌ Não acessível |
❓ Perguntas Frequentes
:root são globalmente disponíveis; variáveis definidas em um elemento só são efetivas naquele elemento e seus filhos. Esta propriedade permite sobrescritas locais de tema — dê a um contêiner valores de variáveis diferentes, e todas as referências àquelas variáveis dentro mudam automaticamente.:root, sobrescreva-as com valores escuros em [data-theme="dark"], depois uma linha de JavaScript document.documentElement.dataset.theme = "dark" pode mudar o esquema de cores do site inteiro.📖 Resumo
- Variáveis CSS são ferramentas muito importantes no desenvolvimento CSS moderno
- Definidas com
--nome-variável, usadas comvar(), tornam o código de estilo mais limpo e fácil de manter - O maior valor: mude um valor, e todos os lugares referenciando aquela variável atualizam automaticamente
- Troca de tema, esquemas de cores responsivos, linguagem de design unificada — variáveis CSS são especialmente úteis em projetos grandes
📝 Exercícios
- Crie uma página usando variáveis CSS para definir pelo menos 5 variáveis para cores de tema, cores de texto, espaçamento, etc., e use-as por toda a página.
- Baseado na página acima, implemente "troca de cor de tema com um clique" — modifique a variável de cor primária em
:roote observe mudanças em todos os elementos relacionados. - Use variáveis CSS para implementar uma troca simples de modo "dia/noite" (trocando classe ou atributo data-theme via JS).
- Sobrescreva localmente valores de variáveis CSS em um contêiner (como um componente de card) e observe mudanças de estilo em seus elementos filhos.