css中使用rgba()遇到的问题及解决办法
程序员文章站
2022-03-30 17:37:16
...
今天遇到了一个问题,要在一个页面中设置一个半透明的白色div。这个貌似不是难题,只需要给这个div设置如下的属性即可:
background: rgba(255,255,255,.1);
但是要兼容到ie8。这个就有点蛋疼了。因为ie8不支持rgba()函数。下面我们总结一下rgba()函数的含义。
rgba的含义,r代表red,g代表green,b代表blue,红绿蓝是三原色。所有颜色都可以由这三种颜色拼合而成。a代表透明度。比如rgba(255,255,255,0.1)就是透明度为0.1的白色。在现代浏览器中是支持rgba的。但是在ie8等古董级浏览器中是不支持的rgba的,ie8只能勉强支持rgb()函数(即去掉了透明度,只能表示颜色)。
所以在ie8中设置半透明就要费点脑子了。从大神那里得知可以使用ie的filter来解决这个问题,css代码如下:
background: rgba(255,255,255,.1); filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#19ffffff,endColorstr=#19ffffff);
第二句话的意思就是当上一行的透明度不起作用的时候执行。这句话的意思本来是用来做渐变的。但是这个地方不需要渐变。所以两个颜色都设置成了相同的颜色。
大家注意,这个颜色“#19ffffff”是由两部分组成的。
第一部是#号后面的19 。是rgba透明度0.1的IEfilter值。从0.1到0.9每个数字对应一个IEfilter值。对应关系如下:
第二部分是19后面的六位 。这个是六进制的颜色值。要跟rgb函数中的取值相同。比如rgb(255,255,255)对应#ffffff;都是白色。
到这里,rgba的用法就可以兼容IE8了。
以上就是css中使用rgba()遇到的问题及解决办法的详细内容,更多请关注其它相关文章!
推荐阅读
-
Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini及服务无法启动的快速解决办法(问题小结)
-
html5的input的required使用中遇到的问题及解决方法
-
Python中的Socket 与 ScoketServer 通信及遇到问题解决方法
-
使用CSS3编写类似iOS中的复选框及带开关的按钮
-
使用CAD最常遇到的11种问题 如怎么一次剪除多条线段等的解决办法
-
jquery1.8版本使用ajax实现微信调用出现的问题分析及解决办法
-
ubuntu14.04 使用中遇到的问题及解决方法集锦
-
新手使用Android Studio会遇到的两个问题和解决办法
-
element合并单元格方法及遇到问题的解决办法
-
SQL Server 数据库调整表中列的顺序操作方法及遇到问题