Voltar para o Blog

Dark Mode: Implementando o Tema Escuro em Seu Site com CSS e JavaScript

O Dark Mode (Modo Escuro) se tornou uma tendência popular no design de interfaces de usuário. É uma escolha de design que altera o esquema de cores de uma interface para um esquema mais escuro. Muitos usuários preferem o modo escuro porque ele pode ser mais suave para os olhos, especialmente em ambientes com pouca luz.

Anúncio

Neste artigo, mostraremos como implementar o Dark Mode em seu site usando CSS e JavaScript.

Benefícios do Dark Mode

  1. Economia de Energia: Em dispositivos com telas OLED, o modo escuro pode economizar energia.
  2. Redução da Fadiga Visual: Pode ser mais confortável para leitura em ambientes com pouca luz.
  3. Estética: Proporciona uma aparência moderna e elegante.

Implementando Dark Mode com CSS

Podemos usar variáveis CSS para definir cores que podem ser facilmente alternadas entre os modos claro e escuro.

:root {  --background-color-light: #ffffff;  --background-color-dark: #000000;  --text-color-light: #000000;  --text-color-dark: #ffffff;}body.dark-mode {  background-color: var(--background-color-dark);  color: var(--text-color-dark);}body.light-mode {  background-color: var(--background-color-light);  color: var(--text-color-light);}

Adicionando JavaScript para Alternar Entre Modos

Podemos adicionar um botão que permitirá aos usuários alternar entre os modos claro e escuro.

<button id="toggle-dark-mode">Toggle Dark Mode</button>

Agora, vamos usar JavaScript para alternar as classes do corpo.

document  .getElementById('toggle-dark-mode')  .addEventListener('click', function () {    document.body.classList.toggle('dark-mode');    document.body.classList.toggle('light-mode');  });

Considerações de Acessibilidade

Ao implementar o Dark Mode, é essencial garantir que o contraste entre o texto e o fundo seja suficiente para manter a legibilidade. Ferramentas como Color Contrast Checker podem ajudar.

Anúncio

Testando em Dispositivos Diferentes

Certifique-se de testar a implementação em diferentes dispositivos e navegadores para garantir uma experiência de usuário consistente.

Aspectos Adicionais da Implementação do Dark Mode

Utilizando Preferências do Sistema

É possível levar a experiência do usuário a um nível superior, identificando e aplicando automaticamente as preferências de cor do sistema do usuário. Com a consulta de mídia prefers-color-scheme, você pode definir estilos diferentes para os modos claro e escuro, de acordo com as configurações do sistema do usuário.

@media (prefers-color-scheme: dark) {  body {    background-color: var(--background-color-dark);    color: var(--text-color-dark);  }}

Persistindo a Escolha do Usuário

Para uma experiência mais suave, considere armazenar a preferência de tema do usuário em um cookie ou no localStorage. Isso permitirá que o site se lembre da escolha do usuário na próxima visita.

const userPrefersDarkMode = localStorage.getItem('dark-mode') === 'true';if (userPrefersDarkMode) {  document.body.classList.add('dark-mode');} else {  document.body.classList.add('light-mode');}document  .getElementById('toggle-dark-mode')  .addEventListener('click', function () {    const darkModeEnabled = document.body.classList.toggle('dark-mode');    localStorage.setItem('dark-mode', darkModeEnabled);  });

Considerando o Design de Imagens e Componentes

Ao implementar o Dark Mode, é importante ajustar não apenas as cores do texto e do fundo, mas também considerar a aparência de imagens, ícones e outros componentes da UI. Algumas imagens e componentes podem precisar de variações específicas para os modos claro e escuro para manter a harmonia visual.

Conclusão

O Dark Mode se tornou uma parte essencial do design moderno da web, oferecendo benefícios tanto estéticos (AESTHETIC) quanto funcionais. A sua implementação não apenas aumenta a acessibilidade e o conforto visual, mas também reflete um cuidado com as preferências e necessidades dos usuários.

Com as técnicas apresentadas neste artigo, esperamos que você esteja inspirado a experimentar e incorporar o Dark Mode em seus projetos web. Os detalhes adicionais aqui fornecidos podem ajudá-lo a criar uma experiência ainda mais rica e personalizada.

Continue explorando e inovando, e nunca deixe de melhorar a experiência do usuário em suas criações. Afinal, a web é um ambiente em constante evolução, e a adaptação às tendências e tecnologias emergentes é o que mantém seu trabalho relevante e atraente.

Interessado em outras técnicas de design e desenvolvimento? Confira nosso post sobre Animando SVG com CSS: Dando Vida aos Gráficos Vetoriais.

Anúncio

Até a próxima, HaWkers!

Bora pra cima! 🦅

Post anterior Próximo post

Comentários (0)

Esse artigo ainda não possui comentários 😢. Seja o primeiro! 🚀🦅

Adicionar comentário