我们接下面主要是解决一个在IE中Close按钮图片显示不出的问题。我们看到它的CSS使用的了AlphaImageLoader Filter,关于如何使用这个Filter你可以参考这篇POST
一种方法是使用绝对Path,如:
1: AlphaImageLoader(src="http://yourdomain.com/js/fancybox/ fancy_loading.png" ..
另一种方法是使用Javascript,打开jquery.fancybox-1.3.1.css,提到#fancybox-loading.fancybox-ie div 处替换成以下代码:
.fancybox-ie #fancybox-close { background: transparent; behavior: expression(this.runtimeStyle.filter?"":this.runtimeStyle.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src=""+ (function(){var t=document.getElementsByTagName("link");for(var i=0;i<t.length;i++){var h=t[i].href.split("?")[0];if(h&&/polaroid_gallery\.css$/.test(h)){return h.replace("polaroid_gallery.css","");}} return "";})() +"Scripts/fancybox/fancy_close.png",sizingMethod="scale")"); }
看上去有点儿funy, 在css使用Javascript.
然后就可以了,这里我们使用的是IE 8.0.7600.16385。fancybox 1.31 的版本。最好的解决方案是实现自定义的样式,也不会有这样的问题。后面我们发面这个网站也在使用fancybox。可以参考:
http://www.microsoft.com/express/windows/
希望这篇POST对您开发有帮助。