ie8兼容rgba的方法

现在做个网页还得考虑ie8,只想说:尼玛!

但是没办法,屈于淫威也得弄。

首先说下rgba的含义吧,rgba,r代表red,g代表green,b代表blue,a代表透明度。

filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#b2000000,endColorstr=#b2000000); 

上面这句代码就是可以让rgba的透明度在ie8里显示的方式啦。

这是是透明度对应值表格

 
rgba中的a ie中的透明度值表示
0.1 19
0.2 33
0.3 4c
0.4 66
0.5 7f
0.6 99
0.7 b2
0.8 c8
0.9 e5

 

 

 

 

 

 

 

 

 

 

下面说说括号内还有其它那些参数:

Enabled:可读写。布尔值(Boolean)。

GradientType:可读写。整数值(Integer)。设置或检索色彩渐变的方向。1 | 0。这个属性还是比较实用的哦!

  1:默认值。水平渐变。

  0:垂直渐变。

StartColorStr:可读写。字符串(String)。

StartColor:可读写。整数值(Integer)。设置或检索色彩渐变的开始颜色。 取值范围为 0 - 4294967295 。 0 为透明。 4294967295 为不透明白色。

EndColorStr:可读写。字符串(String)。设置或检索色彩渐变的结束颜色和透明度。默认值为 #FF000000 。不透明黑色。

EndColor:可读写。整数值(Integer)。设置或检索色彩渐变的结束颜色。 取值范围为 0 - 4294967295 。 0 为透明。 4294967295 为不透明白色。当在脚本中使用此特性时,也可以用十六进制格式: 0xAARRGGBB 。

说明:

在对象的背景和内容之间显示定制的色彩层。

当此效果通过转变显示时,在渐变册色彩层之上的文本程序性的初始化为透明的,当色彩渐变实现后,文本颜色会以其定义的值更新。

DXImageTransform.Microsoft.gradient滤镜里的startColorstr参数值是#AARRGGBB形式的, 其中的AA是代表不透明度的十六进制,00表示完全透明,FF就是全不透明,化成十进制的范围就是0~255,剩下的RRGGBB就是颜色的十六进制代 码。

eg:把40%的不透明度转换成十六制呢的方法如下:先计算#AA的的十进制x,x/255 = 4/10,解得x=4*255/10,然后再把x换算成十六进制,约等于66。

 

posted @ 2017-04-20 12:07  OliveKong  阅读(383)  评论(0编辑  收藏  举报