Sass @each具有多个变量
我刚刚开始使用Sass和Compass,我喜欢它。我想做的就是利用该@each
功能简化重复性任务。但是,我仅看到了@each
插入一个变量的示例,并且我希望能够使用多个变量。
标准方式(来自[Sass参考):
@each $animal in puma, sea-slug, egret, salamander { .#{$animal}-icon {
background-image: url('/images/#{$animal}.png');
}
}
很棒,但是我希望能够执行以下操作:
@each {$animal $color} in {puma black}, {sea-slug green}, {egret brown}, {salamander red} { .#{$animal}-icon {
background-color: #{$color};
}
}
这可能吗?
回答:
我在同一条船上(Sass / Compass的初学者),不得不做类似的事情。这是我使用嵌套列表想到的:
$flash_types: (success #d4ffd4) (error #ffd5d1);@each $flash_def in $flash_types {
$type: nth($flash_def, 1);
$colour: nth($flash_def, 2);
&.#{$type} {
background-color: $colour;
background-image: url(../images/#{$type}.png);
}
}
这不是最优雅的解决方案,但是如果您找不到其他任何东西,它应该可以工作。希望能帮助到你!我也希望有更好的方法:)
以上是 Sass @each具有多个变量 的全部内容, 来源链接: utcz.com/qa/413043.html