【问题标题】:Is there a way to use an argument in a mixin to generate a variable name within the mixin with SASS? [duplicate]有没有办法在 mixin 中使用参数在带有 SASS 的 mixin 中生成变量名? [复制]
【发布时间】:2014-02-15 01:05:06
【问题描述】:
关于这个问题,这是我正在尝试做的一个示例,但我觉得使用 SASS 插值在使用参数的 mixin 中输出变量时不起作用。
$红色:#f00;
@mixin 颜色口音类($颜色){
.#{$color}-accent {
颜色:$#{$color};
}
}
@include color-accent-class(red);
最终我试图使重复代码低于 DRY,所以我不会重复自己所有草率的风格,我想知道是否应该使用 @function 和/或 @each 或其他一些循环动作来完成与 SASS。提前感谢您的任何指导!
$蓝色:#2a62a7;
$红色:#db0042;
$紫色:#5b3b9f;
$橙色:#f7911a;
$浅蓝色:#46aeed;
$绿色:#49b842;
@mixin 产品口音($颜色名称,$hexval){
.product-accent-#{$color-name} {
图像{
边界: {
剩下: {
风格:纯色;
宽度:10px;
颜色:$hexval;
}
}
}
h3, b {
颜色:$hexval;
}
。按钮 {
@extend .button.#{$color-name};
}
}
}
@include 产品口音(黑色,#000);
@include 产品口音(蓝色,$蓝色);
@include 产品口音(红色,$red);
@include 产品口音(紫色,$紫色);
@include 产品口音(橙色,$橙色);
@include 产品口音(浅蓝色,$浅蓝色);
@include 产品口音(绿色,$green);
【问题讨论】:
-
非常感谢马丁。还在学习 SASS,我还没有了解列表和 nth()。我现在会发布我自己的答案,再次感谢!
标签:
sass
interpolation
dry
mixins