Nesting y selector padre (&) con criterio

Aprende a anidar en Sass sin generar CSS inflado, usando & para estados, variantes y estructura BEM limpia.

El nesting mejora lectura, pero abusar de niveles genera selectores frágiles.

El selector padre (&) permite estados, modificadores y pseudoestados sin repetir bloques.

Una profundidad de 2-3 niveles suele ser suficiente para mantener CSS saludable.

Piensa primero en el selector final CSS y luego escribe SCSS.

  • Anida cuando expresa relación real de componente, no por comodidad visual.
  • Si al compilar obtienes selectores largos y difíciles de sobreescribir, simplifica estructura.
  • Con & puedes crear .boton--primario, :hover, :focus-visible o contextos de tema sin duplicar nombre base.
  • Esto encaja muy bien con metodologías de componentes en CSS.
  • El nesting mejora lectura, pero abusar de niveles genera selectores frágiles.

Anidar con propósito

Anida cuando expresa relación real de componente, no por comodidad visual.

Si al compilar obtienes selectores largos y difíciles de sobreescribir, simplifica estructura.

Uso práctico de &

Con & puedes crear .boton--primario, :hover, :focus-visible o contextos de tema sin duplicar nombre base.

Esto encaja muy bien con metodologías de componentes en CSS.

Sass
03

Nesting y selector padre (&) con criterio

Aprende a anidar en Sass sin generar CSS inflado, usando & para estados, variantes y estructura BEM limpia.

Código del tema: Arquitectura Sass escalable

📘 Teoría

Anidar con propósito

1

Anida cuando expresa relación real de componente, no por comodidad visual.

2

Si al compilar obtienes selectores largos y difíciles de sobreescribir, simplifica estructura.

Uso práctico de &

1

Con & puedes crear .boton--primario, :hover, :focus-visible o contextos de tema sin duplicar nombre base.

2

Esto encaja muy bien con metodologías de componentes en CSS.

Nesting controlado
.button {
  padding: .625rem 1rem;

  &:hover {
    opacity: .92;
  }

  &--primary {
    background: #2563eb;
    color: #fff;
  }
}

🧪 Aprende probando

Ejemplo Ejemplo: bloque + elemento + modificador Usa & para mantener coherencia BEM y comparar CSS compilado.

🏁 Retos

Reto Reto: añade estado :focus-visible Dentro de .link, crea un estado accesible con &.

🧰 Recursos

Test

Comprueba tus conocimientos con un test sobre Sass.

Test de Sass
CodePen: card component pattern
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 .