那兼容方面呢?IE不太兼容alpha
IE9以前都不支持这个函数,但是有一种方法可以做兼容效果:
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#20222222,endColorstr=#20222222);//IE6-8
--------------------------------------------------------------------------------------------------------------------
DXImageTransform.Microsoft.gradient滤镜里的startColorstr参数值是#AARRGGBB形式的,其中的AA是代表不透明度的十六进制,00表示完全透明,FF就是全不透明,化成十进制的范围就是0~255,剩下的RRGGBB就是颜色的十六进制代码。例子中background: rgba(125, 0, 0, .3);表示的是30%不透明度的红色背景。
把30%的不透明度转换成十六制呢的方法如下:先计算#AA的的十进制x,x/255 = 3/10,解得x=3*255/10,然后再把x换算成十六进制,约等于4B。