在变暗功能中使用十六进制颜色作为字符串

时间:2018-11-22 17:03:07

标签: css less

在一种不太常用的样式中,我有一个字符串变量。

@colorString: 'DADADA';

我可以将其变成一种颜色

@color: ~'#@{colorString}';

我可以使用@color从样式中设置一些值:

div { color: @color }

但是我不能将它与darken()函数(或任何其他管理颜色的内置函数)一起使用。 示例:

background: linear-gradient(to bottom right,darken( @color , 20%), @color);

编译器输出 错误评估函数darken:color.toHSL不是函数

@color似乎不是颜色(#DADADA),而是字符串('#DADADA'),并且函数无法对其进行解析

有什么想法可以解决这个问题,而无需更改@colorString(它可以是字符串)吗?

1 个答案:

答案 0 :(得分:2)

您需要使用color()将字符串解析为彩色。

@colorString: 'DADADA';
@color: color('#@{colorString}');
background: linear-gradient(to bottom right, darken(@color, 20%), @color);

文档:http://lesscss.org/functions/#misc-functions-color