rgba(255,255,255,.1)这可以设置背景颜色的透明度,但是要兼容到ie8。这个就有点困难了。
rgba的含义,r代表red,g代表green,b代表blue,红绿蓝是三原色。所有颜色都可以由这三种颜色拼合而成。a代表透明度。比如rgba(255,255,255,0.1)就是透明度为0.1的白色。在现代浏览器中是支持rgba的。但是在ie8等古董级浏览器中是不支持的rgba的,ie8只能勉强支持rgb()函数(即去掉了透明度,只能表示颜色)。
可以使用ie的filter来解决这个问题
background: rgba(255,255,255,.1);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#19ffffff,endColorstr=#19ffffff);
第二句话的意思就是当上一行的透明度不起作用的时候执行。这句话的意思本来是用来做渐变的。但是这个地方不需要渐变。所以两个颜色都设置成了相同的颜色。
“#19ffffff”是由两部分组成的,第一部分是前两位,例如19,它对应rgba()中的最后一位透明度,对应关系如下图所示:
![]()
第二部分是后六位,例如ffffff,代表十六进制的颜色值。
这样就能兼容IE了。