在CSS3里可以使用RGBA和HSLA两种色彩模式,都可以用来在设置颜色的同时也可以设置它的透明度。RGBA指的是“红色、绿色、蓝色和Alpha透明度”(Red-Green-Blue-Alpha),而HSLA则代表“色调、饱和度、亮度和Alpha透明度”(Hue-Saturation-Lightness-Alpha)。
在RGBA模式里,前三个参数分别是红色、绿色和蓝色的强度值,取值从0~255或0%-100%。而在HSLA模式里,前三个参数则分别代表色调(0-360)、饱和度(0%-100%)和亮度(0%-100%)。透明度的取值从0(完全透明)到1(完全不透明)
1
2
|
background-color: hsla(182, 44%, 76%, .5);
background-color: rgba(166, 218, 220, .5);
|
针对IE的兼容:IE8及之前的版本不支持HSLA/RGBA,但有以下备选方案:
为这些浏览器指定HEX、RGB或HSL格式的不透明背景
将一小张半透明PNG图片平铺作为背景图(但会增加一次HTTP请求,而且IE6不支持Alpha透明PNG图片)
使用Gradient(渐变)滤镜
当然还有一个工具,输入值后自动转化为对应的滤镜值。