我刚刚开始使用Sass和Compass,我很喜欢它.我想做的是利用该@each功能来简化重复性任务.但是,我只看到@each插入一个变量的例子,我希望能够使用多个变量.
标准方式(来自Sass参考):
@each $animal in puma, sea-slug, egret, salamander {
.#{$animal}-icon {
background-image: url('/images/#{$animal}.png');
}
}
Run Code Online (Sandbox Code Playgroud)
这很棒,但我希望能够做到这样的事情:
@each {$animal $color} in {puma black}, {sea-slug green}, {egret brown}, {salamander red} {
.#{$animal}-icon {
background-color: #{$color};
}
}
Run Code Online (Sandbox Code Playgroud)
这可能吗?
我希望能够通过该地图项目的索引选择SASS地图项目值。
简化方案:
// Colors map (MUST stay this way due to system dependence)
$colors: (
a: red,
b: green,
c: blue
);
@for $i from 1 through 3{
a:nth-child({$i}){ color:[GET COLOR BY $i FROM $COLORS]; }
}
Run Code Online (Sandbox Code Playgroud)
那可能吗?