博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
背景颜色透明度- IE8兼容rgba-滤镜filter的用法
阅读量:5888 次
发布时间:2019-06-19

本文共 844 字,大约阅读时间需要 2 分钟。

今天遇到了一个问题,要在一个页面中设置一个半透明的白色div(黑色、不管设什么颜色)。这个貌似不是难题,只需要给这个div设置如下的属性即可:

[css]
  1. background: rgba(255,255,255,0.1);  

但是要兼容到ie8。这个就有点蛋疼了。因为ie8不支持rgba()函数。下面我们总结一下rgba()函数的含义。

rgba的含义,r代表red,g代表green,b代表blue,红绿蓝是三原色。所有颜色都可以由这三种颜色拼合而成。a代表透明度。比如rgba(255,255,255,0.1)就是透明度为0.1的白色。IE9及以上的浏览器是可以通过rgba设置透明度的。但是在ie8等古董级浏览器中是不支持的rgba的,ie8只能勉强支持rgb()函数(即去掉了透明度,只能表示颜色)。

所以在ie8中设置透明就要用滤镜filter了。css代码如下:

[css] 
  1. background: rgba(255,255,255,0.1);  
  2. 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了。

 

转载于:https://www.cnblogs.com/zhicheng/p/6826039.html

你可能感兴趣的文章
6.1(续)索引、索引组织表--Oracle模式对象
查看>>
工作5年左右的程序员如何在职业瓶颈期内快速提升自己的身价?提升后如何有效变现自己的高质量技能?...
查看>>
动画 球
查看>>
C++中的堆,栈,静态内存区,常量区
查看>>
动态SQL实现与注意事项(有返回值与无返回值动态SQL 实现)
查看>>
java struts2 debug
查看>>
解析 PHP 中 session 的实现原理以及大网站应用应该注意的问题
查看>>
[转].net mvc + vuejs 的项目结构
查看>>
Centos7安装Redis
查看>>
简单够用的设计
查看>>
javascript权威指南--学习笔记
查看>>
梦断代码阅读笔记02
查看>>
git和tortoisegit下载
查看>>
53. Maximum Subarray
查看>>
flask踩坑和排坑记录
查看>>
iOS UITableView 微信页面
查看>>
得到一定范围内的随机数
查看>>
使用Nodejs获取博客园博客数据并处理转发
查看>>
2003终端服务器授权,120天试用期限制
查看>>
springboot项目创建(myeclipse2017)
查看>>