Fundamentos de Sistemas de Cores em Modo Duplo
Como definir paletas de cores que funcionam tanto em claro como em escuro, mantendo a identidade visual e a legibilidade.
Ler ArtigoEstratégias práticas para desenhar ícones que mantêm a legibilidade em ambos os temas visuais sem duplicação excessiva
Quando criamos interfaces com suporte a modo escuro e claro, os ícones são frequentemente negligenciados. Muitos designers simplesmente invertem a cor do ícone — branco em claro, preto em escuro — e acham que está tudo bem. Mas não é assim que funciona.
A verdade é que o peso visual, o contraste e até a percepção de tamanho dos ícones mudam dependendo do fundo. Um ícone que parece perfeito em um tema pode ficar invisível ou pesado demais no outro. Isso afeta tanto a estética quanto a usabilidade da sua interface.
O contraste é o primeiro problema. Em modo claro, você tem um fundo branco (#ffffff) e precisa de um ícone escuro para criar separação. Em modo escuro, você tem um fundo muito escuro (digamos, #0a0f1e) e um ícone branco.
Mas aqui está o problema: o contraste entre branco puro e preto puro é de 21:1 — o máximo possível. Quando você inverte isso, mantém o mesmo contraste. Porém, o que parece equilibrado em um tema pode parecer agressivo no outro.
Dica prática: Use #f1f5f9 (cinza muito claro) em vez de branco puro no modo claro. Reduz o contraste para ~17:1, ainda acessível, mas mais equilibrado visualmente.
O peso — a espessura do traço — é onde a maioria dos designers erra. Um ícone com traço de 2px pode parecer perfeito em modo claro, mas em modo escuro ele fica quase invisível. Isso não é coincidência.
Em modo escuro, o ícone branco se dilata opticamente — um efeito chamado irradiação. Seu olho percebe o branco como maior do que realmente é. Para compensar, você precisa reduzir ligeiramente o peso do traço. Se o ícone usa 2px em claro, tente 1.75px em escuro.
Existem basicamente três formas de adaptar ícones. Cada uma tem seus prós e contras — você precisa escolher baseado no seu projeto.
Criar dois conjuntos separados — um para claro, outro para escuro. Mais controle, mas duplica o trabalho. Funciona bem quando você quer aproveitar as características de cada tema.
Usar o mesmo ícone, mas ajustar apenas a cor e talvez o peso do traço. É o caminho mais eficiente. Requer cálculos de contraste cuidadosos para garantir legibilidade.
Usar variação de cor para 80% dos ícones, mas criar versões únicas para ícones críticos (como o logo ou elementos de marca). Melhor dos dois mundos.
Na prática, a implementação é simples. Você usa CSS variables e media queries para gerenciar as variações. Veja como funciona.
Exemplo de implementação com CSS:
:root {
--icon-color-light: #334155;
--icon-color-dark: #f1f5f9;
--icon-weight-light: 2px;
--icon-weight-dark: 1.75px;
}
.icon {
stroke: var(--icon-color-light);
stroke-width: var(--icon-weight-light);
}
@media (prefers-color-scheme: dark) {
:root {
--icon-color-light: #f1f5f9;
--icon-weight-light: 1.75px;
}
}
Simples, não é? Você define as variáveis uma vez e deixa o navegador fazer o resto baseado na preferência do usuário.
Aqui está algo que muitos designers esquecem: nem todo mundo vê as cores da mesma forma. Se você depender apenas da cor para diferenciar ícones, está criando problemas para pessoas com daltonismo.
O WCAG 2.1 exige um contraste mínimo de 4.5:1 para texto e 3:1 para elementos gráficos. Com ícones, você está na zona cinzenta — tecnicamente são elementos gráficos, mas funcionam como ícones informativos.
Contraste não é apenas cor. O branco puro em preto puro pode parecer agressivo. Use cinzentos — #f1f5f9 em claro, #e2e8f0 em escuro. Mantém a legibilidade, melhora a aparência.
Peso visual muda com o fundo. O branco se dilata opticamente em fundos escuros. Se você usa 2px em claro, experimente 1.75px em escuro. Pequenas mudanças fazem diferença.
Use CSS variables. Gerenciar ícones sem duplicação é possível com `prefers-color-scheme` e variáveis CSS. É eficiente, escalável e fácil de manter.
Quer aprofundar em design de interfaces com modo duplo? Confira nossos guias sobre sistemas de cores e gestão de contraste.
Como definir paletas de cores que funcionam tanto em claro como em escuro, mantendo a identidade visual e a legibilidade.
Ler Artigo
Técnicas práticas para garantir que o seu design atende aos padrões de acessibilidade e funciona para todos os usuários.
Ler Artigo
Aprenda a criar controles intuitivos para a seleção de tema, considerando preferências do usuário e implementação técnica.
Ler ArtigoEste artigo fornece orientações educacionais sobre design de ícones para modos claros e escuros. As recomendações baseiam-se em princípios de design aceitos e padrões WCAG. Cada projeto tem necessidades únicas — sempre teste suas implementações com usuários reais e ferramentas de contraste. As práticas de acessibilidade evoluem continuamente, portanto, mantenha-se atualizado com as diretrizes mais recentes.