rails 3.2.13中css.scss文件中`rgb'问题的参数个数错误(4个为3)

Tai*_*aiz 3 css sass css3 ruby-on-rails-3.2

rgb在rails中出现错误的参数数量:

我看到css文件中的rgb需要3个参数,如此处所述

http://www.w3schools.com/cssref/css_colors.asp

但是在我的项目中,abc.css.scss文件有这样的代码

border: 1px solid rgb(100, 100, 100, 2);
border: 1px solid rgba(0, 0, 0, 0.2);
-webkit-box-shadow: 0px 3px 2px rgba(67, 67, 67, 0.1);
-moz-box-shadow: 0px 3px 2px rgba(67, 67, 67, 0.1);
Run Code Online (Sandbox Code Playgroud)

那么这里发生了什么.我错过了什么吗?

提前致谢!

Mr.*_*ien 9

第四个参数是 alpha

所以举个例子 rgba(0, 0, 0, .1);

.1是alpha/opacity

为什么他两次申报正确?

border: 1px solid rgb(100, 100, 100, 2); 
/* This is fall back if browser doesn't support `rgba` but 
   here the 4th parameter shouldn't be there, it's making the proerty useless.. */

border: 1px solid rgba(0, 0, 0, 0.2); 
/* Here he is having black color with an alpha of .2 */
Run Code Online (Sandbox Code Playgroud)

因此,rgb使用4个参数会使属性值无效,因此您需要从rgb第一个属性中删除最后一个参数


use*_*134 8

简短而甜蜜的答案是,当您使用时,rgb您不能传递alpha属性。使用rgba来使用alpha


mus*_*fan 5

答案是非常自我解释的.rgb期望3个参数,所以你需要给它3,而不是4.

这就是你想要的:

border: 1px solid rgb(100, 100, 100);
border: 1px solid rgba(0, 0, 0, 0.2);
-webkit-box-shadow: 0px 3px 2px rgba(67, 67, 67, 0.1);
-moz-box-shadow: 0px 3px 2px rgba(67, 67, 67, 0.1);
Run Code Online (Sandbox Code Playgroud)

请注意,第一行已更改

如果保留第4个参数,则第一行代码将不起作用.它将被忽略而无效.

请参阅此示例:您会注意到方形是黑色的,因为rgb带有第4个参数的参数无效,因此不会应用