Bucles Sass: @each, @for y @while con control

Automatiza utilidades y variantes con bucles Sass sin sobreproducir clases innecesarias en el CSS final.

Los bucles Sass reducen trabajo repetitivo al generar familias de clases de forma declarativa.

@each es ideal para listas y mapas; @for para rangos numéricos; @while para casos muy específicos.

Automatizar no significa generar miles de utilidades: mantén un catálogo mínimo útil.

Valida siempre el CSS compilado para evitar peso innecesario.

  • Si repites el mismo patrón con variaciones predecibles, un bucle puede ahorrar tiempo y errores.
  • Si solo hay 2-3 casos aislados, probablemente escribir reglas explícitas sea más mantenible.
  • Con @each recorres listas de valores o mapas de pares clave-valor para crear clases consistentes.
  • Prefiere nombres semánticos y un conjunto corto de utilidades.
  • Los bucles Sass reducen trabajo repetitivo al generar familias de clases de forma declarativa.

Cuándo merece la pena automatizar

Si repites el mismo patrón con variaciones predecibles, un bucle puede ahorrar tiempo y errores.

Si solo hay 2-3 casos aislados, probablemente escribir reglas explícitas sea más mantenible.

@each para utilidades controladas

Con @each recorres listas de valores o mapas de pares clave-valor para crear clases consistentes.

Prefiere nombres semánticos y un conjunto corto de utilidades.

Sass
09

Bucles Sass: @each, @for y @while con control

Automatiza utilidades y variantes con bucles Sass sin sobreproducir clases innecesarias en el CSS final.

Código del tema: Arquitectura Sass escalable

📘 Teoría

Cuándo merece la pena automatizar

1

Si repites el mismo patrón con variaciones predecibles, un bucle puede ahorrar tiempo y errores.

2

Si solo hay 2-3 casos aislados, probablemente escribir reglas explícitas sea más mantenible.

@each para utilidades controladas

1

Con @each recorres listas de valores o mapas de pares clave-valor para crear clases consistentes.

2

Prefiere nombres semánticos y un conjunto corto de utilidades.

Generador simple de gaps
$spaces: (xs: .25rem, sm: .5rem, md: 1rem, lg: 1.5rem);

@each $name, $value in $spaces {
  .gap-#{$name} {
    gap: $value;
  }
}

🧪 Aprende probando

Ejemplo Ejemplo: utilidades de columnas Genera .cols-1 a .cols-4 con @for.

🏁 Retos

Reto Reto: generar opacidades Crea clases .opacity-10 a .opacity-50 con incrementos de 10.

🧰 Recursos

Test

Comprueba tus conocimientos con un test sobre Sass.

Test de Sass
CodePen: utility classes y composición
Abrir en CodePen

¿Qué es esto?

Soy Cristian Eslava y a veces hago webs para procrastinar yo y vosotros 😉.

Esta la hice en febrero de 2026 para facilitar el aprendizaje de mis alumnxs. Aprender desarrollo web practicando. La idea es que crezca semanalmente con nuevos temas, tests y retos.

Inspirado en MDN, en W3Schools, en Codepen, en el crack de Manz y en mil sitios de documentación sobre desarrollo web. Quería aportar además de bloques teóricos con ejemplos, la gamificación de los retos y el sistema de test que ya tenía en culTest .

Si te gustó, si no te gustó, si quieres saludarme, o invitarme a 🍻 no dudes en escribirme en cristianeslava@gmail.com .