CSS难题 ie6中png背景透明图片要是做 “ 重复效果”就做不出

html-css04

CSS难题 ie6中png背景透明图片要是做 “ 重复效果”就做不出,第1张

当初遇到这个问题时使用的并不是你提到的JS文件,使用的是一个比较牛B的类似给IE6打补丁一样的JS文件,这个文件你可以在Google代码中找到并下载最新版本。但具体文件名我就不直说了,呵呵,有点舍不得,哈哈,真的。

说一下引用那个JS文件后目测到的效果吧。因为当初没有好好看文档说明,所以根据当初的目测说一下吧。IE6引用之后,原有的CSS盒模型等经典BUG消失,也就是说使IE6从某种程度上来说接近于IE7。其中就包含了支持PNG格式的效果。

当时只是纠结于是否非要用这个JS文件,一方面是增加页面负担,二是对于接近完成的页面,原有针对BUG所写代码白写,会造成一定混乱等等。

所以你可以参考着来

另一方面如果使用一楼说的滤镜,我个人认为速度会有很大影响。

再者,某种程度上根据具体情况,也许你的情况可以用另一种切片方式或者变通的方式可以解决图片的问题。

呵呵,不过话说到这儿,怎么感觉有点乱。

呵呵,再联系吧

关于你对问题的补充

先问你是男是女,如果是女的我就给你文件的下载地址,男的,就不给哦~

算了,不逗你了。

刚给你找了一下http://homepage.ntlworld.com/bobosola/pngfix.js

这个没有使用过,不知道具体应用效果,应该可以。

引用方法:<!--[if lt IE 7.]>

<script defer type="text/javascript" src="pngfix.js"></script>

<![endif]-->

其二就是之前提到的,我用过的。http://code.google.com/p/ie7-js/ 这是介绍及下载。

不过我惊奇的发现,官方说

Unfortunately, the transparent background image cannot be tiled (repeated) using background-repeat. Nor can it be positioned using background-position.

呵呵,还真记不清当时怎么回事了。不过也许第一个JS可以实现背景重复,如果实在不行,就是不行了。如果图片不大,你退一步直接用个大图片吧。

实现透明的css方法通常有以下3种方式(以下是不透明度都为80%的写法)

css3的opacity:x,x 的取值从 0 到 1,如opacity: 0.8

css3的rgba(red, green, blue, alpha),alpha的取值从 0 到 1,如rgba(255,255,255,0.8)

IE专属滤镜 filter:Alpha(opacity=x),x 的取值从 0 到 100,如filter:Alpha(opacity=80)