让IE浏览器支持RGBa的背景色

本文介绍了RGBA颜色模式的概念及其与RGB模式的区别,详细讲解了在不同浏览器中的兼容性问题,并提供了两种解决方案,即使用CSSPIE和IE滤镜来实现IE浏览器对RGBA的支持。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

http://www.jb51.net/css/68590.html
点评:RGB色彩模式(也翻译为“红绿蓝”,比较少用)是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的;并非所有浏览器都支持使用百分数值,本文介绍解决方法
RGB色彩模式(也翻译为“红绿蓝”,比较少用)是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。

RGBA在RGB的基础上多了控制alpha透明度的参数。以上R、G、B三个参数,正整数值的取值范围为:0 – 255。百分数值的取值范围为:0.0% – 100.0%。超出范围的数值将被截至其最接近的取值极限。并非所有浏览器都支持使用百分数值。A参数,取值在0~1之间,不可为负值
RGBA语法:


复制代码代码如下:
div {
background: rgba(0, 0, 0, 0.5);
}

浏览器兼容性:
类型 Internet Explorer Firefox Chrome Opera Safari
版本 (×)IE6 (√)Firefox 3.0.10 (√)Chrome 2.0.x (√)Opera 9.64 (√)Safari 4
(×)IE7
(×)IE8
(√)IE9

RGBA和opacity的区别
opacity会使整个元素包括子元素透明,而RGBA仅仅是元素本事透明,子元素不透明。
下面具体讲讲怎样让IE浏览器支持RGBA颜色
一、CSSPIE
CSSPIE可以让color、background、 box-shadow支持RGBA
示例:

复制代码代码如下:
div{
color:rgba(0,0,0,.5);
background:rgba(0,0,0,.5);
-pie-background:rgba(0,0,0,.5);/*IE6-8*/
box-shadow: 1px 1px rgba(0,0,0,.5);/*仅在未设置模糊值的情况下支持rgba*/
}

二、filter
通过IE滤镜让背景色透明,模拟rgba效果
示例:

复制代码代码如下:
background: rgba(125, 0, 0, .3);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#4B7D0000
,endColorstr=#4B7D0000);我们需要留意的是StartColorStr和EndColorStr的值,前两位是十六进制的透明度,后面六位是十六进制的颜色。
换算方法:x=alpha*255 将计算的结果x转换成十六进制即可
详解: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。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值