在mixin参数中使用颜色作为字符串(lesscss)

eph*_*ron 1 css less

基本上我想使用可能包含'red','green'或'blue'等关键字的字符串.然而,LESS将其转换为十六进制值,如#ff0000而不是红色.


.foo(@className) {
    .bar_@{className} { color: white; }
}
Run Code Online (Sandbox Code Playgroud)

使用mixin

.foo(red);
Run Code Online (Sandbox Code Playgroud)

应该输出

.bar_red { color: white; }
Run Code Online (Sandbox Code Playgroud)

但相反它显示

.bar_#ff0000 { color: white; }
Run Code Online (Sandbox Code Playgroud)

如何将参数转义或转换为字符串?谢谢.

Fra*_*sco 5

尝试.foo(~"red");可能会工作......