页面有多个通过循环遍历得到的标签,不确定个数,现在我想通过sass为每个标签附上不同的颜色,但是我在sass中的颜色数组只会有7个颜色元素,如何通过sass遍历确保每一个标签元素都能得到相应的样式。
页面有多个通过循环遍历得到的标签,不确定个数,现在我想通过sass为每个标签附上不同的颜色,但是我在sass中的颜色数组只会有7个颜色元素,如何通过sass遍历确保每一个标签元素都能得到相应的样式。
:nth-child(),你看下这个,你的描述不是很清晰,但感觉应该可以用这个。大致代码如下
some-elem{
@for $i from 1 through 7 {
$n: '';
@if $i > 1 {
$n: 7n+#{$i - 1};
} @else {
$n: 7n;
}
&:nth-child(#{$n}){
color: nth($color, $i);
}
}
}
3 回答4.9k 阅读✓ 已解决
5 回答2k 阅读
2 回答1.9k 阅读✓ 已解决
1 回答3k 阅读✓ 已解决
3 回答2.5k 阅读
2 回答1k 阅读✓ 已解决
2 回答2.2k 阅读
发现刚才理解错误了,是7个颜色,然后数量不固定
那应该是SASS用@for,然后配合nth-child,7个就是7n+i
Sass代码
生成的CSS:
然后为item加上样式,例如
HTML代码:加入有10个item
最终的效果:

这样每个item都会有颜色了