Css 使用映射到hsl值的Sass变量不会';当尝试与hsla一起使用时,它不起作用
我有一个映射到hsl值的Sass变量。当我尝试将它与hsla结合使用以增加一点透明度时,它不起作用。我正在这样做:Css 使用映射到hsl值的Sass变量不会';当尝试与hsla一起使用时,它不起作用,css,colors,sass,hsl,Css,Colors,Sass,Hsl,我有一个映射到hsl值的Sass变量。当我尝试将它与hsla结合使用以增加一点透明度时,它不起作用。我正在这样做: $white:hsl(100, 100%, 100%); .thing{ color:hsla($white,.9); } 使用gulp sass构建CSS时,我遇到以下错误:“调用{file's path}中{line number}行上的函数hsla时缺少必需的参数$lightness” 如果我用rgba替换hsla,效果很好,是的,我可以这样做,但我想保留hsl中的所有
$white:hsl(100, 100%, 100%);
.thing{
color:hsla($white,.9);
}
使用gulp sass构建CSS时,我遇到以下错误:“调用{file's path}中{line number}行上的函数hsla时缺少必需的参数$lightness”
如果我用
rgba
替换hsla
,效果很好,是的,我可以这样做,但我想保留hsl中的所有颜色。是否有解决方法或这是Sass问题?这不是Sass的问题,功能根本不存在。如果查看,rgba()有两个版本,一个单独接受所有参数,另一个接受对象
如果查看hsla()的文档,它只接受单独的值 为了实现您的目标,您可以这样做:
$white:hsl(100, 100%, 100%);
.thing{
color: hsla(hue($white), saturation($white), lightness($white), .9);
}
或者。。。如果要传递颜色对象,可以创建自己的函数;e、 g.hslac($color,$alpha)
@function hslac($color, $alpha) {
@if(type-of($color) == "color") {
@return hsla(hue($color), saturation($color), lightness($color), $alpha);
}
@else {
@error "You didn't pass a color object";
}
}