J'essaie de faire un mixin pour obtenir ce qui suit. Je possède une liste de boutons sociaux. Ils partagent chacun les mêmes styles sauf la couleur de fond et les états de survol.Référencement d'une variable sass/scss à la volée
Mon approche SASS actuelle. (Renverra l'erreur CSS valide)
@mixin btn-social($network) {
.#{$network} {
background: $#{$network}; // trying to reference a global variable
&:hover, &:focus {
background: darken($#{$network}, $darken-modifier);
}
}
}
Pour render comme ceci:
.facebook {
background: blue; // stored in $facebook
}
.facebook:hover, .facebook:focus {
background: darkblue; //darkend value above
}
je manque en quelque sorte les bons termes pour une recherche google appropriée. J'apprécierais une poussée dans la bonne direction.
Merci pour l'aide.
Dans la question OP, il incluait le nom de classe dans le mixin, en utilisant '$ network' comme référence de classe. Ceci est facile à faire dans votre exemple, il suffit d'envelopper le contenu de mixin dans '. # {$ Network} {// content}', puis vous pouvez supprimer '.facebook {}' et '.twitter {}' dans le CSS et utilisez simplement @include btn-social (facebook); –
@TomOakley merci pour la suggestion, j'ai mis à jour la réponse –