我在SASS中有一个列表,并且我正在尝试使用方括号表示法访问这些项目:
$collection[1];
但这给了我一个错误。
还有其他方法吗?
我为什么要这样做?
我有一个颜色列表,必须根据服务器分配给它们的颜色在不同的元素上进行设置。标记已编号的类(color-0
,color-1
等)。这是我的目标CSS:
.color-0 { color: red }
.color-1 { color: orange }
.color-2 { color: green }
.color-3 { color: blue }
/* many more, with more complex colors... */
我想不用手工编写所有内容,而是可以将SASS集合与循环一起使用:
$color-collection: ('red', 'orange', 'green', 'blue');
$color-count: length($color-collection);
@for $i from 0 to $color-count {
.color-#{$i} {
color: $color-collection[ $i ];
}
}
但这只是给我以下错误:
语法错误:“ ... color-collection”之后的CSS无效:预期的“;”为“ [$ i];”
我该怎么做?
我遇到了类似的问题,并尝试了Alex Guerrero解决方案。我无法正常工作,因为输出
.color-gray:{gray};
不是。.color-1:{gray};
所以我对其进行了一些修改,看起来像这样:哦,是的 我使用SASS,而不是SCSS。