DOM + CSS classes: the front-end combo
TODO i18n: Full body translation pending. Title and description are localized; the body below remains in Portuguese for now.
O JavaScript moderno quase nunca deveria setar element.style.color = … para estados de UI. Em vez disso:
- O CSS define como
.is-open,.is-activeou[data-theme="dark"]aparecem. - O JS só alterna classes ou atributos.
- Acessibilidade acompanha (
aria-expanded,hidden,aria-selected).
Esse contrato simples aparece nos exemplos de abas, tema com localStorage e no snippet toggle de classe.
Quando HTML estrutura, CSS apresenta e JS orquestra classes, o código fica legível — e testável.