我有以下代码来混合颜色:
color = Sass::Script::Parser.parse("mix(#000000, #000000, 75%)", 0, 0).perform(Sass::Environment.new)
color.to_s
当计算的颜色为黑色时,Sass 使用名称 black
:
color => 'black'
我希望它是#000000
.我该怎么做?
我什至尝试更改样式(因为显然压缩模式会导致这种情况(,例如 color = Sass::Script::Parser.parse("mix(#000000, #000000, 75%)", 0, 0, {:style => :nested}).perform(Sass::Environment.new)
目前,我们必须通过以下方式处理此问题:
color = hex_color_value(color)
def hex_color_value(sass_color)
case sass_color
when 'black'
'#000000'
when 'white'
'#ffffff'
else
sass_color
end
end
我认为
这是不可能的,解析器似乎会立即转换它,但您至少可以使用常量COLOR_NAMES回。