演示地址:http://css3pie.com/demos/gradient-patterns/
可以使 IE6、7、8 、9 实现类似 chrome 和 firefox
1. 更自然逼真的阴影效果,不再是以前那种丑陋的滤镜效果。
2. 实现很自然的圆角效果
3. 实现部分 CSS3 的强悍效果,如 多背景图,border-image,更强的背景渐变效果。
4. png 图片透明效果
上个演示截图先:
非常强大哦,基本上现在就只用这个插件就可以搞定很多兼容问题了。
下面简单说下使用方法:
1. .htc 大概是浏览器补丁模式
css 中使用 behavior 来加载即可自动实现效果,
#test { border-radius: 3px; behavior: url(/PIE.htc); }
如果无法显示可能是 服务器端不支持该类型文件格式的解析,可以在服务器配置文件的
mime.types文件的末尾增加一行:text/x-component htc,具体方式请自己 google 下吧
方法一的总结,我自己最早使用的也就是这个方法,发现时灵时不灵的,很郁闷了好久,而且每个地方都要写,超级麻烦,最后差点都放弃这个插件了,后来发现了方法二。
2. .js 方式,很灵活,简单
下载并解压缩 http://css3pie.com/download-latest
使用 PIE.js 文件
<script type="text/javascript" src="/PIE.js"></script> <script type="text/javascript"> PIE.attach(document.getElementById("test")); </script>
另外推荐配合 jQuery 使用更方便
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script> <script type="text/javascript" src="/PIE.js"></script> <script type="text/javascript"> (function($){ $.pie = function(name, v){ // 如果没有加载 PIE 则直接终止 if (! PIE) return false; // 是否 jQuery 对象或者选择器名称 var obj = typeof name == 'object' ? name : $(name); // 指定运行插件的 IE 浏览器版本 var version = 9; // 未指定则默认使用 ie10 以下全兼容模式 if (typeof v != 'number' && v < 9) { version = v; } // 可对指定的多个 jQuery 对象进行样式兼容 if ($.browser.msie && obj.size() > 0) { if ($.browser.version*1 <= version*1) { obj.each(function(){ PIE.attach(this); }); } } } })(jQuery); $(function(){ $.pie('.for-ie6', 6); var objs = $('.for-ie, .test, .test1, .test2 .test3, #test4'); $.pie(objs, 9); }); </script>
------------------------------------------------------------------------------------------------------------------------------------------------------------
08.23 补充:透明的方法,
直接对执行过PIE兼容的当前容器进行透明度是没有用的,因为JS会新生成一个自定义标签层叠在下面,可以用下面的步骤实现透明
1. CSS 添加
css3-container { filter:alpha(opacity=98); }
$('.test').prev('css3-container').css({'filter':'alpha(opacity=98)', 'opacity':0.98});