classList.remove()

element.classList.remove(class1, class2, …)

Retire de l’élément les classes indiquées. Si l’élément n’a pas une classe donnée, rien ne se passe.

L’exemple travaille avec le code HTML placé au-dessus du code JavaScript.

Paramètres

  • class1, class2, … – noms des classes.

Valeur de retour

undefined.

Exemples

<nav><a class="link active">Accueil</a><a class="link">Blog</a><a class="link">Contact</a></nav>
const links = document.querySelectorAll('nav .link');
const activate = (target) => {
  links.forEach((a) => a.classList.remove('active'));
  target.classList.add('active');
};
activate(links[2]);
console.log([...links].map((a) => a.className));
links[0].classList.remove('missing', 'link');
console.log(JSON.stringify(links[0].className));

Résultat :

[ 'link', 'link', 'link active' ]
""

Points d’attention

  • Après le retrait de la dernière classe, l’attribut reste sous la forme d’un class="" vide.

Prise en charge par les navigateurs

Baseline – largement disponible : fonctionne dans tous les navigateurs courants, et depuis longtemps (au plus tard depuis 2015). Depuis la version : Chrome 8, Firefox 3.6, Safari 5.1 ; absent de Node.js (API du navigateur). État : octobre 2026 (MDN browser-compat-data).

Voir aussi :
classList.add()
classList.toggle()