¿Cómo crear y aplicar dinámicamente la clase CSS en JavaScript?

En este artículo, veremos cómo crear dinámicamente una clase CSS y aplicarla al elemento dinámicamente usando JavaScript. Para hacer eso, primero creamos una clase y la asignamos a los elementos HTML en los que queremos aplicar la propiedad CSS. Podemos usar la propiedad className y classList en JavaScript.

Acercarse:

  • La propiedad className utilizada para agregar una clase en JavaScript. Sobrescribe las clases existentes de los elementos seleccionados. Si no queremos sobrescribir, debemos agregar un espacio antes del nombre de la clase.
// It overwrites existing classes 

var h2 = document.querySelector("h2");
h2.className = "test";

// Add new class to existing classes
// Note space before new class name

h2.className = " test";
  • La propiedad classList también se usa para agregar una clase en JavaScript, pero nunca sobrescribe las clases existentes y agrega una nueva clase a la lista de clases de elementos seleccionados.
// Add new class to existing classes

var p = document.querySelector("p");
p.classList.add("test");
  • Después de agregar nuevas clases a los elementos, seleccionamos la nueva clase (prueba) y luego le aplicamos propiedades CSS, con la ayuda de la propiedad de estilo en JavaScript.
// Select all elements with class test 

var temp = document.querySelectorAll(".test");

// Apply CSS property to it
for (var i = 0; i < temp.length; i++) {
  temp[i].style.color = "white";
  temp[i].style.backgroundColor = "black";
}

A continuación se muestra la implementación de esto:

Ejemplo:

HTML

<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
</head>
 
<body>
    <h2 class="hello"> Welcome to gfg </h2>
 
    <p id="hi">Hi it's me.</p>
 
 
 
 
 
    <button onclick="apply()">
        Apply css dynamically
    </button>
     
    <script>
        function apply() {
            // It overwrites existing classes
            var h2 = document.querySelector("h2");
            h2.className = "test";
 
            // Add new class to existing classes
            var p = document.querySelector("p");
            p.classList.add("test");
 
            // Select all elements with class test
            var temp = document.querySelectorAll(".test");
 
            // Apply CSS property to it
            for (var i = 0; i < temp.length; i++) {
                temp[i].style.color = "green";
                temp[i].style.fontSize = "40px";
            }
        }
    </script>
</body>
 
</html>

Producción:

Antes de hacer clic en el botón:

Después de hacer clic en el botón: 

Publicación traducida automáticamente

Artículo escrito por nikhilchhipa9 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *