Die richtige Antwort auf die Frage, wie man in Sass CSS-Eigenschaften von einem Selektor auf einen anderen überträgt, ist die Verwendung der @extend
-Direktive. Sass, eine präzisere CSS-Erweiterungssprache, bietet diese mächtige Funktion, um die Eigenschaften eines vorhandenen Selektors auf einen anderen übertragen zu können.
Die Verwendung der @extend
-Direktive ist ganz einfach. Sie müssen nur den Namen des Selektors angeben, den Sie erweitern möchten. Hier ist ein einfaches Beispiel:
.button {
display: block;
padding: 10px 20px;
color: white;
background-color: blue;
}
.special-button {
@extend .button;
background-color: red;
}
In diesem Fall wird die .special-button
-Klasse alle CSS-Eigenschaften der .button
-Klasse erben. Der Ausgangs-CSS würde so aussehen:
.button, .special-button {
display: block;
padding: 10px 20px;
color: white;
background-color: blue;
}
.special-button {
background-color: red;
}
Obwohl die @extend
-Direktive sehr nützlich ist, müssen wir einige Best Practices und Einschränkungen beachten.
Vermeiden Sie es, @extend
innerhalb von Medienabfragen zu verwenden, da dies zu unerwarteten Ergebnissen führen kann. Stattdessen sollten Sie @include
und Mixins verwenden.
Verwenden Sie @extend
nur, wenn Sie vollständige Stile von einem Selektor auf einen anderen übertragen möchten. Wenn Sie nur einige wenige Eigenschaften teilen möchten, ist es besser, ein Mixin oder eine Variable zu verwenden.
Die @extend
-Direktive ist ein mächtiges Werkzeug in Sass, das effektiv und mit Bedacht eingesetzt werden sollte. Sie kann helfen, trockenen, organisierten und besser lesbaren Code zu schreiben.