我刚进入SCSS。如果以前曾被问过,请道歉,但我找不到任何与我想做的事情相符的事情。
我有一个.erb视图,可以动态地将类分配给特定的div。例如,我可能会有这样的事情:
<div class="red blue green">Hello world!</div>
有没有办法访问div的所有类,所以我可以这样做:
@each $c in CLASSES {
$g: $g, $c;
}
linear-gradient(to bottom right, $g);
//would be equivalent to linear-gradient(to bottom right, #F00, #0F0, #00F);
答案 0 :(得分:0)
Sass是一个CSS预处理器,意味着它会编译成CSS,因为CSS本身不知道HTML存在什么或者它是如何被使用的,所以无法完成。您应该重新考虑如何编写CSS并且可能采用类似于以下的方法:
.gradient-rgb { linear-gradient(to bottom right, #F00, #0F0, #00F) }
.gradient-gbr { linear-gradient(to bottom right, #0F0, #00F, #F00) }
.gradient-brg { linear-gradient(to bottom right, #00F, #F00, #0F0) }
如果您遵循这种方法,那么您将能够使用Sass映射生成类。如果生成如此多的可能性,您也可以考虑使用JavaScript。