Add multiple classes to an Element using JavaScript

avatar

Borislav Hadzhiev

Last updated: Jul 25, 2022

banner

Check out my new book

Add multiple classes to an Element using JavaScript #

To add multiple classes to an element, select the element and pass multiple classes to the classList.add() method, e.g. box.classList.add('bg-blue', 'text-white'). The add() method takes one or more classes and adds them to the element.

Here is the HTML for the examples in this article.

index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <style> .bg-blue { background-color: blue; } .text-white { color: white; } </style> </head> <body> <div id="box">Box 1</div> <script src="index.js"></script> </body> </html>

And here is the related JavaScript code.

index.js
const box = document.getElementById('box'); // ✅ Add multiple classes box.classList.add('bg-blue', 'text-white'); // ✅ Remove multiple classes box.classList.remove('first-class', 'second-class');

add multiple classes to element

We selected the element using the document.getElementById() method.

We then used the classList.add method to add multiple classes to the element.

If a class is already present on the element, it will be omitted. The add() method only adds classes that are not already contained in the element's class list.

You can pass one or more classes to the add() method, but if you pass it an empty string argument or an argument that contains a space, the method throws an error.

If you need to remove one or more classes from an element, use the classList.remove() method. The method takes one or more class names as parameters and removes them from the element.

The classList.add() method has to be invoked on a DOM element. If you have a collection of elements, iterate over it and call the method on each element.

Here is the HTML for the next example.

index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <style> .bg-blue { background-color: blue; } .text-white { color: white; } </style> </head> <body> <div class="box">Box 1</div> <div class="box">Box 2</div> <div class="box">Box 3</div> <script src="index.js"></script> </body> </html>

And here is the related JavaScript code.

index.js
const boxes = document.querySelectorAll('.box'); for (const box of boxes) { // ✅ Add multiple classes box.classList.add('bg-blue', 'text-white'); // ✅ Remove multiple classes box.classList.remove('first-class', 'second-class'); }

add multiple classes to collection of elements

We used the document.querySelectorAll method to select all of the elements in the DOM with a class of box.

We used the for...of loop to iterate over the collection and added multiple classes to each element.

I wrote a book in which I share everything I know about how to become a better, more efficient programmer.
book cover
You can use the search field on my Home Page to filter through all of my articles.