在CSS3中可以使用RGBA和HSLA两种色彩模式,这两个都可以用来设置颜色以及指定透明度。
rgba指的是:红色、绿色、蓝色、Alpha透明度(Red-Green-Blue-Alpha)前三个值取值从0~255或0%~100%
hsla指定是:色调、饱和度、亮色、Alpha透明度(Hue-Saturation-Light-Alpha)
色调取值0~360,饱和度和亮度取值0%~100%其中,Alpha的取值从0~1,0代表完全透明,1代表完全不透明
从上面可以看出hsla要比rgba稍微高大上一些
拿边框来举个栗子:
使用rgba方式:
border: 10px solid rgba(255,255,255,.5);
rgba分别对应红绿蓝和透明值,其中rgb区间为0(纯黑)至255(纯色)透明度a区间为0(完全透明)至1不透明
使用hsla方式:
background: white;
border: 10px solid hsla(0, 0%, 100%, .5);
background-clip: padding-box;
默认情况下,背景的颜色会延伸至边框下层,在css3中,我们可以通过设置background-clip:padding-box来改变背景的默认行为,从而达到我们更想要的效果
结论:
RGBA无法直观看出是什么颜色。并且如果想要对颜色进行调整也无法简单做到
HSLA只要将色调值设为一个特定值就可以方便地调整其亮度和饱和度