En este momento estás viendo Cómo Aplicar BEM en CSS: Buenas Prácticas para Mejorar la Mantenibilidad y la Estructura de tu Código

Cómo Aplicar BEM en CSS: Buenas Prácticas para Mejorar la Mantenibilidad y la Estructura de tu Código

  • Autor de la entrada:
  • Categoría de la entrada:CSS
  • Última modificación de la entrada:septiembre 11, 2024

Creando Soluciones Web que Conectan y Inspiran

Cómo Hacer que Tu Página Web Luzca Genial: Usando BEM en CSS

¡Hola! Hoy vamos a aprender cómo hacer que las páginas web sean bonitas y ordenadas usando algo llamado BEM en CSS. Imagina que estamos construyendo una casita de bloques. Cada bloque tiene una función y un lugar específico, y eso es lo que hace que la casita se vea bien y no se caiga. BEM es como un sistema para organizar esos bloques en una página web.

¿Qué es BEM?

BEM son las iniciales de Block, Element, Modifier (Bloque, Elemento, Modificador). Piensa en BEM como un juego de construcción:

  • Block (Bloque): Es como una caja grande. Por ejemplo, imagina que estamos construyendo una caja para nuestros juguetes. Esta caja es nuestro «bloque» en la página web.
  • Element (Elemento): Dentro de la caja, hay juguetes individuales. Cada juguete es un «elemento» del bloque. En nuestra página web, los elementos son partes más pequeñas del bloque, como botones o títulos.
  • Modifier (Modificador): A veces, queremos cambiar cómo se ve la caja o los juguetes. Quizás pintamos la caja de rojo o le ponemos un sticker. Eso es lo que hace el «modificador» en BEM. Nos ayuda a cambiar un poco el aspecto de nuestros bloques y elementos.

¿Por Qué Usar BEM?

Usar BEM es como tener un plan para construir tu casita de bloques. Aquí te contamos por qué es útil:

  • Organización: Te ayuda a mantener todo en orden. Así, si quieres cambiar algo, como el color de un botón, sabes exactamente dónde buscar.
  • Facilidad: Hace que tu código sea más fácil de leer. Como tener instrucciones claras para construir tu casita de bloques.
  • Evitar Errores: Con BEM, es más difícil que los bloques se mezclen o se rompan. Todo tiene su lugar y su nombre.

¿Cómo Usar BEM?

Imagina que tienes una caja de juguetes con un botón en ella. Aquí está cómo podrías usar BEM:

  • Block (Bloque): caja-juguetes – Esta es nuestra caja.
  • Element (Elemento): caja-juguetes__botón – Este es el botón dentro de la caja.
  • Modifier (Modificador): caja-juguetes__botón--rojo – Este es un botón rojo en lugar de uno normal.

Ejemplo de Código con BEM

Imagina que estamos creando una página web con una tarjeta que tiene un título, una imagen y un botón. Aquí está cómo podríamos organizar el código usando BEM:

Mostrar Código HTML

Mostrar Código HTML

<div class="tarjeta">
  <img src="imagen.jpg" alt="Imagen" class="tarjeta__imagen">
  <h2 class="tarjeta__titulo">¡Hola Mundo!</h2>
  <button class="tarjeta__botón tarjeta__botón--primario">Leer Más</button>
</div>
Mostrar Código CSS

Mostrar Código CSS

/* Estilos para el bloque 'tarjeta' */
.tarjeta {
  border: 1px solid #ddd;
  padding: 16px;
  border-radius: 8px;
  width: 300px;
  text-align: center;
}

/* Estilos para el elemento 'imagen' dentro del bloque 'tarjeta' */
.tarjeta__imagen {
  max-width: 100%;
  border-radius: 4px;
}

/* Estilos para el elemento 'titulo' dentro del bloque 'tarjeta' */
.tarjeta__titulo {
  font-size: 24px;
  margin: 16px 0;
}

/* Estilos para el elemento 'botón' dentro del bloque 'tarjeta' */
.tarjeta__botón {
  background-color: #007bff;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: 4px;
  cursor: pointer;
}

/* Estilos para el modificador 'primario' del elemento 'botón' */
.tarjeta__botón--primario {
  background-color: #28a745;
}

Explicación:

  • .tarjeta es el bloque. Es la caja que contiene todo.
  • .tarjeta__imagen, .tarjeta__titulo, y .tarjeta__botón son elementos dentro del bloque. Cada uno tiene su propio estilo.
  • .tarjeta__botón--primario es un modificador que cambia el color del botón para que sea diferente del botón normal.