我正在嘗試使用mixin來實現以下功能。實時引用sass/scss變量
我有一個社交按鈕列表。除背景色和懸停狀態外,它們每個都共享相同的樣式。
我目前的SASS方法。 (將返回無效的CSS錯誤)
@mixin btn-social($network) {
.#{$network} {
background: $#{$network}; // trying to reference a global variable
&:hover, &:focus {
background: darken($#{$network}, $darken-modifier);
}
}
}
爲了使這樣的:
.facebook {
background: blue; // stored in $facebook
}
.facebook:hover, .facebook:focus {
background: darkblue; //darkend value above
}
我莫名其妙缺乏合適的條款適當的谷歌搜索。我會很高興向正確的方向推進。
感謝您的幫助。
在OP的問題中,他在mixin中包含類名,使用'$ network'作爲類參考。這很容易在你的例子中完成,只需在'。{{network} {// content}'中包裝mixin內容,然後就可以在CSS中刪除'.facebook {}'和'.twitter {}'只需使用'@include btn-social(facebook);'。 –
@TomOakley感謝您的建議,我已經更新了答案 –