css颜色模式hsla和rgba

在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只要将色调值设为一个特定值就可以方便地调整其亮度和饱和度