在css中使用rgba(255, 255, 255, 0.5)这样的格式来表示rgha。其中最后一个参数表示Alpha通道,表示透明度。
例如:给两个div添加一样的背景色设置不同的透明度
代码:
<div class="div1">rgba透明度0.4</div>
<div class="div2">rgba透明度0.6</div>
css:
div{
margin:10px auto
width:200px
height:100px
text-align: center
line-height: 90px
}
.div1{background: rgba(83,172,150,0.4)}
.div2{background: rgba(83,172,150,0.8)}
效果:
在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(完全不透明)
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(渐变)滤镜
当然还有一个工具,输入值后自动转化为对应的滤镜值。