css透明背景不兼容解决办法详解

css透明是一个技术活,因为这里面涉及到了IE8及以下版本不兼容opacity这个css3属性,而filter:alpha(opacity=80)这个值则是不兼容IE6.网上比较流行的透明css是这样子写的。

 代码如下 复制代码

.transparent_class {

/* IE 5-7 */
filter: alpha(opacity=50);

/* Netscape */
-moz-opacity: 0.5;

/* Safari 1.x */
-khtml-opacity: 0.5;

/* Good browsers */
opacity: 0.5;
}

这里我们使用的是整个层的一个透明,当你使用了上面这个代码之后,那里面的文字和图片都会变透明了,但有时候我们需要的知识背景颜色透明,或者背景图片的一个透明。

1.背景图片透明

又是一个兼容问题了,IE8及以下的不支持rgba(RGBA 颜色值是 RGB 颜色值的扩展,带有一个 alpha 通道 – 它规定了对象的不透明度。),下面这个代码是网上比较流行的一个写法,支持IE系列浏览器,不过前辈的经验是少用哦。

 代码如下 复制代码

.hex_color {
 filter:progid:DXImageTransform.Microsoft.gradient(enabled='true',startColorstr='#7FFF0000', endColorstr='#7FFF0000');
}
:root .hex_color {
 filter:none;  /*处理IE9浏览器中的滤镜效果*/
 background:rgba(255,0,0,0.5);
}

2.透明背景图片

我们都知道IE6下透明的背景图片会有默认的阴影,要解决这个问题可以有这么几种方法

a.使用jsDD_belatedPNG来实现,话说淘宝腾讯这些的都不用这些插件的,也许他们都是通过css来解决的吧

b.把图片保存为png8的格式,我们都知道png8保存的时候会有一些阴影和锯齿的影响。今天在一篇文章里面看到可以用firework来导出png8.

原文提到:

在fireworks里一定要使用导出alpha 透明的png8,而不是保存alpha 透明的png8。
步骤:

 代码如下 复制代码

 Fireworks >>文件>>导出向导

然后一步步往下会得到下图界面,保存就好了:

图示
用这个保存方法解决了毛边的问题,这样就不会有是使用png8坚硬的边缘或者使用png24的蓝底问题了。但图片的半透都成了全透,所以如果图片有半透的,并且半透是需要保留的,那么现在我的办法只有使用png24格式在IE6下使用滤镜。

c.使用滤镜。

 代码如下 复制代码

_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="/dot_2.png");
_background: none;

d.除了png8之外,使用gif和jpg就是另外一种方案。可以分出IE6和其他浏览器的两种不同图片格式,图个兼容呗。

时间: 2024-09-09 20:20:32

css透明背景不兼容解决办法详解的相关文章

Android DaggerActivityComponent错误解决办法详解

Android DaggerActivityComponent错误解决办法详解 在使用dagger2的过程中,如果修改了某个类的内容,第一次编译运行时总会报错:错误: 找不到符号 符号: 类 DaggerActivityComponent 位置: 程序包 com--的错误,然后再重新编译一次,才会正常运行,经过仔细的检查终于找到问题的根源: 错误的原因是build.gradle(Module:app)引入'com.google.dagger:dagger-compiler:2.0.2'使用的是c

IE6中a:hover的bug解决办法详解

先看html部分:  代码如下 复制代码 <li> <a href=""> <span class="item_icon item_icon_11"></span> 密码提示问题 </a> </li> <li> <a href=""> <span class="item_icon item_icon_12"></s

电驴提示“该内容尚未提供权利证明,无法提供下载”之解决办法详解,极力推荐

        最近在电驴上下载东西时总是提示"该内容尚未提供权利证明,无法提供下载",让人很恼火,其实这个问题很容易就能解决,现在给出两种办法,供各位驴友选择. [方法一]在检索到的网址中添加".gdajie",注意添加位置是在verycd之后. 比如我要下载<Android内核剖析>扫描版[PDF]这本书 原检索地址:http://www.verycd.com/topics/2960691/点开显示  该内容尚未提供权利证明,无法提供下载. 添加后地

autocad2014安装失败问题的解决办法详解

1.windows 7系统中不合适AUTOCAD2014软件了,估计一般情况是安装不上去了,如果大家一定要安装可以尝试删除一些文件,如我们在3rdparty目录里的VC和.NET工具都装过的话在setup.ini里搜索PREREQUISITE=,删除包含VC+和.NET相关的所有软件包需求看一下可以解决吗. 2.如果以前安装过我们可以清除注册表中的一些东西,如我定位到注册表的 HKEY_LOCAL_MACHINE/SOFTWARE/CLASSES/INSTALLER/PRODUCTS下的7D2F

IIS+fastcgi下PHP运行超时问题的解决办法详解_php技巧

每在页面中上传较大的文件时遇到FastCgi的错误:"The FastCGI process exceeded configured request timeout",几经试验,明白了需要修改FastCgi的配置文件"fcgiext.ini",位于目录"C:/WINDOWS/system32/inetsrv"下.在"fcgiext.ini"最末php的配置内容下增加一些参数,如下:引用[Types]php=PHP[PHP]Ex

网站被降权的解决办法详解

网站被降权这几乎是每个站长都会遇到的事,无论是什么类型的网站都不可能一帆风顺的,总要经过各种各样的考验之后才能真正的成长起来,但在这期间能不能坚持下来就是个问题了,很多的站长在网站遇到问题的时候,都会不知所措,在坚持努力一断时间之后如果还没恢复,就会心恢意冷,甚至干脆放弃. 其实我也属于这样的一类人,在网站遇到问题的时候,总没有太多的耐心等待,如果网站在三个月内恢复正常,那我就会失去耐心了,就会寻找其他途径,都有可能会重新做一个网站,大家都知道一个新站的成长一般也就是一到三个月,如果你的老站没有

SQL Sever2008r2 数据库服务各种无法启动问题的解决办法(详解)_mssql2008

一.Sql Server服务远程过程调用失败解决 以前出现过这个问题,那时候是因为把实例安装在了D盘,后来D盘被格式化了.然后,这些就没了.今天早上打开电脑,竟然又出现这个问题,可是Server2008R2全部装在C盘了呢. 解决方法: 最后查找解决方法,发现故障原因为:安装Visual Studio 2012的时候,自动安装"Microsoft SQL Server 2012 Express LocalDB"服务,导致原本的SQL2008无法正常工作.那么解决方法如下: ①方法一:

基于ORA-12170 TNS 连接超时解决办法详解_oracle

1.开始----程序-----oracle------配置和移植工具-----Net Manager----本地----服务命名---ora11(这个是我的专用服务器) 把右边下面的主机名改成192.168.1.102 2.开始----程序-----oracle------配置和移植工具-----Net Manager----本地----监听程序---同样把右边下面的主机名改成192.168.1.102 重新连接又报了另一个错误 ora-12541:TNS:没有监听器1.cmd---servic

HTTP 错误 500.19 - Internal Server Error解决办法详解_实用技巧

HTTP 错误 500.19 - Internal Server Error 最近做项目出现了这个错误,经过同事之间的讨论未能解决,之后百度一下找到了解决方法,这里就说下希望大家遇到这种错误可以顺利解决. 无法访问请求的页面,因为该页的相关配置数据无效.如下图:  解决方法,到站点目录的属性,安全标签,添加用户(Everyone),并给修改权限: 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!