罗盘中的rgba函数不会将十六进制值转换为rgba

时间:2012-09-30 10:19:19

标签: sass compass-sass

我写了以下两个mixins:

@mixin textcolor($hexvaltxt, $opacitytxt: 1.0){
    color: $hexvaltxt;
    color: rgba($hexvaltxt, $opacitytxt);
}
@mixin boxcolor($hexvalbox, $opacitybox: 1.0){
    background-color: $hexvalbox;
    background-color: rgba($hexvalbox, $opacitybox);
}

基本上我输入一个十六进制值,作为回报,我得到一个后备颜色作为十六进制值以及一个rgba值。基本上根据我读过的指南针的rgba函数应该将十六进制值和不透明度转换为rgba值。但是当我打电话给我的混音时:

.maintitle {
    @include textcolor($sectionhead);
}

$ sectionhead将#3f3e3e作为值。然后我得到以下输出:

.maintitle {
  color: #3f3e3e;
  color: #3f3e3e; }

而不是显示一个十六进制和一个rgba值,我只得到两次相同的十六进制值。 :/不是转换提供了还是我做错了什么?作为旁注,我正在运行最新的指南针(0.12.2)和sass(3.2.1)。最好的问候ralf

1 个答案:

答案 0 :(得分:0)

1.0是完全不透明的,所以我猜Sass只是保持原样,因为这对于向后兼容性来说是最佳的。如果我将第二个参数更改为.8,我会得到此输出:

.maintitle {
  color: #3f3e3e;
  color: rgba(63, 62, 62, 0.8);
}