这可能是Compass 101,但是有没有人写了一个mixin来设置颜色的alpha值?理想情况下,我希望mixin采用任何形式的颜色定义,并应用透明度:
@include set-alpha( red, 0.5 ); //prints rgba(255, 0, 0, 0.5);
@include set-alpha( #ff0000, 0.5 ); //prints rgba(255, 0, 0, 0.5);
@include set-alpha( rgb(255,0,0), 0.5 ); //prints rgba(255, 0, 0, 0.5);
发布于 2019-02-18 23:14:54
rgba函数在没有透明度的颜色上不起作用,它再次返回十六进制。毕竟,它并不意味着将十六进制转换为rgba,我们只是在利用十六进制不允许alpha的情况下获利。
rgba(#fff, 1) // returns #fff
所以,我做了所有的小函数来构建rgb字符串。我现在不需要处理透明度。
@function toRGB ($color) {
@return "rgb(" + red($color) + ", " + green($color) + ", " + blue($color)+ ")";
}
发布于 2013-06-20 11:59:25
IE的##AARRGGBB格式也有ie-hex-str():
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str(#fdfdfd)}', endColorstr='#{ie-hex-str(#f6f6f6)}',GradientType=0); /* IE6-9 */
https://stackoverflow.com/questions/9270844
复制相似问题