“咳! 哎!….. ”
你听见了么? 这些都是大家抱怨IE6下不能实现png图片漂亮的明效果的哀叫声,的确是无奈呀…..
不过现在幸运的是,我们能够让这一切的抱怨都停止.
网络上解决IE6下Png透明解决方案有很多,例如 http://www.twinhelix.com/css/iepngfix/, http://homepage.ntlworld.com/bobosola/index.htm, http://24ways.org/2007/supersleight-transparent-png-in-ie6.等等.
然而现在,我要和你分享的是 Unit PNG Fix (http://labs.unitinteractive.com/unitpngfix.php) .
因为它的确是太出众了.
1.非常小的javascript文件:1kb!
2.解决因为IE的滤镜属性所带来的影响.
3.无论是img元素或background-image属性,都能有效果.
4.在加载页面之前就能自动运行.或者就一丁点的元素.
5.允许自动高宽.
6.使用起来超级简单.
如何使用:
1).下载zip 然后,添加下面的代码到你页面的头部.(一定要确保路径的正确)<!--[if lt IE 7]>
<script type="text/javascript" src="unitpngfix.js"></script>
<![endif]-->
2).添加clear.gif到你的images 文件夹中.在js文件中,修改“var clear=”images/clear.gif” 路径,为你存放clear.gif的文件路径.
3). 你的整个项目的png图片都实现了透明效果.的确非常简单吧?就2个步骤,就实现了整个站点所有png的透明效果.
一些注意事项:
Unit PNG Fix能够让 background-repeat在ie6下工作,不过这种工作方式不是像正常的repeat图片重复的效果,而是采用了拉伸的效果.但是,仍然是效果 的,所以这也是非常不错的.因为没有任何一个解决方案能够实现ie6下透明滤镜重复图片这个功能.
就这些了,现在你可以开始动手实践了.