rbga 256颜色的scss错误

时间:2015-05-19 12:43:37

标签: css sass

我的设计师给了我这个css:

.wrapper {
   margin:10px auto 0;
   border:5px solid #3c3c3c;
   background:rgba(256,256,256,0.80);
}

它在css文件中工作正常,他说这是有效的(我猜这就是他透明度的方式)

当我把它放在scss文件中时会出现这个错误:

$ red:`rgba'

的颜色值256必须介于0到255之间

2 个答案:

答案 0 :(得分:1)

虽然您的CSS技术验证,但确实会引发警告。来自验证器:

  

256超出范围

浏览器应该像这样(也来自验证器)优雅地钳制值:

.wrapper  { 
    margin : 10px auto 0; 
    border : #3c3c3c solid 5px; 
    background : rgba(255, 255, 255, 0.8); 
}

Sass对此更加严格,因为您正在调用rgba()函数,该函数明确要求参数落在特定范围内:0-255。

答案 1 :(得分:1)

SASS正在解析和评估此表达式,包括rgba函数的值。每个颜色分量的值可以在0到FF(或255)之间。 256是无效值。

话虽如此,浏览器对CSS解释非常灵活(显然比SASS更灵活),他们将256处理为255(至少Chrome会这样做)。

我想,要解决此问题 - 请尝试将256替换为255。