Règle et héritage SASS @Extend
Lorsque vos éléments sont stylisés de manière similaire qui ne diffèrent que des détails mineurs, vous voudriez hériter des propriétés similaires d'un élément à un autre. Ceci est possible en utilisant la règle @Extend qui vous permet de hériter des propriétés utilisées pour un sélecteur à un autre.
Essayons de comprendre cette règle et comment cela aide à hériter des propriétés CSS similaires à l'aide d'un exemple.
Exemple
Dans l'exemple ci-dessous, nous supposons qu'il existe plusieurs messages qui apparaissent sur notre site Web tels que le message d'erreur, le message d'avertissement, le message de réussite, etc. Dans le but de styliser ces éléments, nous définissons d'abord une classe .Standard messages qui contient toutes les propriétés qui sont redondantes pour tous les types de messages apparaissant sur notre site Web.
Toupet
.Message-standardMaintenant, c'est le style de base que tous les messages auront quel que soit leur type. Maintenant, quand il s'agit de styliser ces messages séparément, vous pouvez hériter de ces propriétés du .classe standard de message ainsi que la rédaction d'autres propriétés de style pour chaque type de message.
Toupet
.Message-errorVous pouvez maintenant remarquer que dans l'extrait de code ci-dessus, nous avons utilisé la règle @Extend pour hériter des propriétés de la .Classe de messages pour styliser chaque type de message, donnant à chacun une couleur d'arrière-plan différente. Cela peut économiser beaucoup de temps et d'énergie et le nombre de lignes de code réduit.
Le fichier de sortie CSS résultant ressemblera à ceci.
.de messages, .erreur de message, .avance de messages, .Succès de messageLorsque vous faites référence à ces classes dans votre code HTML, il n'est pas nécessaire de vous référer à plusieurs classes, vous pouvez simplement utiliser les classes attribuées à chacun des messages. Par exemple, n'utilisez pas ceci
Conclusion
La règle @Extend dans SASS vous permet de hériter de propriétés similaires lorsque vos éléments sont stylisés de manière similaire ne diffèrent que des détails mineurs. Vous pouvez définir le style de base de ces éléments dans une classe, puis hériter de cette classe en utilisant la règle @Extend dans d'autres classes ainsi qu'un style supplémentaire pour cet élément particulier. L'utilisation de cette règle peut gagner beaucoup de temps et réduire les lignes de code, ce qui rend votre code propre.