下载此文档

IE6下PNG图片解决.docx


文档分类:IT计算机 | 页数:约20页 举报非法文档有奖
1/20
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/20 下载此文档
文档列表 文档介绍
IE6下PNG图片解决
ie6下不支持png图片的透明,这让我们很多好的设计都不得不放弃,着实让人抓狂,但是ie6下也不是完全不能正常显示png的透明图片,我们还是可以通过一些方式来让ie6支持png透明图片。
下面是一个正常情况下chrome和ie6显示透明背景png图片的例子。
我们拿一张png透明背景的图片作为两个div的背景,看一下它在ie6和chrome浏览器下的不同的显示,(以下有两张图片的效果中第一个图片是正常的用法,第二个图片会是在ie6下处理过的效果)。例子目录结构:
html代码如下:
正常用法:background: url("../images/");
在chrome下的显示结果如下:
在ie6下的显示效果如下:
解决方案:
方案1:滤镜
原理:
        ,它可以很多效果,包括现在CSS3中的一些特效,当然,它也可以解决ie6中的png图片透明的问题。
用法: filter:progid:(src="images/ pngtest .png"); 
写到这里,我们看一下效果是否成功了。
效果如图:
结果很令人意外吧,不是说滤镜可以让png透明吗?没什么变化啊。这是因为我们虽然设置了滤镜引入图片,但是由于在其他浏览器中是可以支持png的,所以我们还写了一句background: url("../images/");设置了背景图片,背景图片的层级要比滤镜的高,所以我们看到的是背景图片,那么解决办法当然不是删除背
景图片,因为其他浏览器还要用,所以我们可为ie6的背景设置为none;即加一句background: none;
效果如图:
不知道有没有注意到上面有些什么异常?对,就是用滤镜时图片的路径并不是相对于css文件的,而是相对于html文件的。
在使用滤镜时,如果想使用hover,那么要在自己定义cursor:pointer;
优点:
    ; 
    ,不会出现先灰底再透明的情况,支持远程图片; 
    ; 
缺点: 
    ,网速慢的情况下,会导致第二张图片暂时无法显示,因为还没有完全载入
    ,虽然filter有sizingMethod="scale", 拉伸缩放模式,但是图片会变形,如果单纯的颜色或简单的渐变色还能横向平铺; 
    ; 
    Sprite; 
使用条件: 
     
     Sprite 
    
方案2:HTC插件
 
原理:
         行为的概念。,它们定义了一套方法和属性,程序员几乎可以把这些方法和属性应用到HTML页面上的任何元素上去。 
所需文件:
。将这两个文件放入到我们的项目中,然后在css文件中需要用到png图片的标签上引入htc文件
, = thisFolder + '';这样一行代码,大约在19行附近,我们需要更改的只是路径,如本例目录结构所示, = thisFolder + 'images/';
如图:
注意:
在ie6下显示的效果如图所示:
优点:
    ,在引用图片时不再考虑图片的引入和路径问题
     
缺点: 
    
   
    Sprite  
    ,当文件载入之前,会先暂时呈现灰底 
使用条件: 
     
     Sprite 
方案3:CSS行为expression
原理:
    IE5及其以后版本支持在CSS中使用expression,用来把CSS属性和Javascript表达式关联起来,这里的CSS属性可以是元素固有的属性,也可以是自定义属性。就是说CSS属性后面可以是一段Javascript表达式,CSS属性的值等于Javascript表达式计算的结果。在表达式中可以直接引用元素自身的属性和

IE6下PNG图片解决 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数20
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文库旗舰店
  • 文件大小534 KB
  • 时间2018-05-25