Nas últimas aulas, aprendemos a criar elementos dinamicamente, delegar eventos e escrever código performático no DOM.

Agora vamos fechar esse bloco entendendo a forma mais correta, limpa e performática de alterar o visual da página usando JavaScript:

manipulando classes CSS.

🎯 Objetivo da aula

Ao final desta aula, você será capaz de:

  • Adicionar classes CSS via JavaScript
  • Remover classes CSS
  • Alternar classes dinamicamente
  • Verificar se um elemento possui uma classe
  • Controlar o visual da interface sem usar estilos inline

Por que manipular classes (e não estilos)?

É tecnicamente possível alterar estilos direto pelo JavaScript:

 element.style.color = "red"; element.style.fontSize = "20px"; 

Mas isso não é a melhor prática.

O ideal é manter a separação:

  • HTML → estrutura
  • CSS → visual
  • JavaScript → comportamento
Manipular classes mantém o código mais organizado e performático.

Conhecendo o classList

Para trabalhar com classes CSS no JavaScript, usamos a propriedade classList.

Ela fornece métodos simples e poderosos para lidar com classes.

Adicionando uma classe

Usamos classList.add:


        const caixa = document.getElementById("caixa"); 
        caixa.classList.add("ativo"); 

Isso adiciona a classe ativo ao elemento.

Removendo uma classe

Usamos classList.remove:

 caixa.classList.remove("ativo"); 

Alternando classes (toggle)

O método mais usado no dia a dia é toggle.

Ele:

  • Adiciona a classe se não existir
  • Remove a classe se já existir
 caixa.classList.toggle("ativo"); 

Perfeito para:

  • Menus
  • Modais
  • Botões on/off

Verificando se uma classe existe

Podemos verificar se um elemento possui uma classe usando contains.

 if (caixa.classList.contains("ativo")) { console.log("A caixa está ativa"); } 
 console.log("A caixa está ativa"); // Saída será exibida se a classe existir 

Exemplo real: botão que ativa/desativa

HTML:

 <button id="btn">Ativar</button> <div id="painel">Painel</div> 

CSS:

 .painel-ativo { background: #428bca; color: white; padding: 10px; } 

JavaScript:

 const botao = document.getElementById("btn"); const painel = document.getElementById("painel");

botao.addEventListener("click", () => {
painel.classList.toggle("painel-ativo");
});

Aqui, o JavaScript apenas controla o comportamento — o visual fica todo no CSS.

Classes e delegação de eventos

Manipulação de classes combina perfeitamente com delegação:

 document.body.addEventListener("click", (event) => { if (event.target.classList.contains("item")) { event.target.classList.toggle("selecionado"); } }); 
Esse padrão é muito usado em listas dinâmicas.

Boas práticas importantes

  • Evite style direto no JavaScript
  • Use nomes de classes semânticos
  • Deixe o CSS cuidar do visual
  • Use classList sempre que possível
Manipular estilos inline dificulta manutenção e performance.

Resumo da aula para nunca mais esquecer

  • classList controla classes CSS
  • add, remove, toggle são os principais métodos
  • Classes mantêm a separação entre JS e CSS
  • São mais performáticas que estilos inline
  • Essenciais para interfaces modernas

Com isso, fechamos um bloco essencial de DOM moderno. A partir daqui, você tem base sólida para interfaces interativas e profissionais 🚀


HARDWARE

Entendendo o seu computador

O que há dentro do meu computador?

Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

Instalar vários aplicativos com o mesmo propósito, como editores de texto, reprodutores de músicas ou vídeos e até programas antívirus sobrecarregam o seu sistema operacional e ainda ocupam espaço desnecessário em seu HD. Tenha apenas um bom programa para cada função.


Street Fighter 2, lançado para o Super Nintendo no início dos anos 90, foi o principal responsável pelo aumento nas vendas deste console. Graças ao sucesso do título nos Arcades e à perfeita adaptação ao console, muitos consumidores adquiriram o SNES para jogarem o título em casa. Saiba mais.


As primeiras máquinas de fliperama do mundo a utilizarem moedas, chamadas de Galaxy Game, custavam mais de 20 mil dólares para serem produzidas. Saiba mais sobre elas aqui.


O famoso título Final Fantasy, da Square Enix, tem este nome exatamente porque se tratava da última esperança da empresa, que estava à beira da falência quando o lançou. Clique aqui e conheça detalhes dessa história.


A empresa Universal City Studios, detentora dos direitos autorais do King Kong, processou a Nintendo logo após o lançamento de Donkey Kong, pois segundo ela, o game violava os seus direitos. Ela venceu o processo e recebeu da Nintendo uma indenização de quase 2 milhões de dólares.