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
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"); } }); Boas práticas importantes
- Evite
styledireto no JavaScript - Use nomes de classes semânticos
- Deixe o CSS cuidar do visual
- Use
classListsempre que possível
Resumo da aula para nunca mais esquecer
classListcontrola classes CSSadd,remove,togglesã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.
Você Sabia?
Muitos aplicativos
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
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.
Galaxy Game
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.
Final Fantasy
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.
Donkey Kong
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.










