Cuándo usar @extend
Úsalo para compartir una base semántica muy estable entre variantes cercanas.
Evita extender selectores de utilidad genéricos en todo el proyecto porque acopla bloques sin querer.
Aprende a reutilizar reglas con placeholders y @extend, entendiendo cuándo conviene frente a mixins para evitar selectores inesperados.
@extend comparte reglas entre selectores, pero puede crear combinaciones difíciles de rastrear si se abusa.
Los placeholders (%) evitan generar CSS innecesario hasta que otro selector los extiende.
En componentes complejos, mezcla de @extend y nesting puede inflar la especificidad si no se controla.
Para patrones con variaciones frecuentes, muchas veces un mixin sigue siendo más claro.
Úsalo para compartir una base semántica muy estable entre variantes cercanas.
Evita extender selectores de utilidad genéricos en todo el proyecto porque acopla bloques sin querer.
Un placeholder no aparece en CSS final hasta que se extiende desde una clase real.
Esto ayuda a mantener salida más limpia que declarar clases base solo para heredar estilos.
Aprende a reutilizar reglas con placeholders y @extend, entendiendo cuándo conviene frente a mixins para evitar selectores inesperados.
Código del tema: Arquitectura Sass escalable
Úsalo para compartir una base semántica muy estable entre variantes cercanas.
Evita extender selectores de utilidad genéricos en todo el proyecto porque acopla bloques sin querer.
Un placeholder no aparece en CSS final hasta que se extiende desde una clase real.
Esto ayuda a mantener salida más limpia que declarar clases base solo para heredar estilos.
%btn-base {
display: inline-flex;
align-items: center;
gap: .5rem;
padding: .625rem 1rem;
border-radius: 10px;
}
.btn-primary {
@extend %btn-base;
background: #2563eb;
color: #fff;
}
.btn-danger {
@extend %btn-base;
background: #dc2626;
color: #fff;
}