欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

CSS3 Pie工具推荐--让IE6-8支持一些优秀的CSS3特性

程序员文章站 2022-07-07 22:14:35
CSS3 Pie工具可以让IE6至IE8版本实现大多数的CSS3修饰特性,如圆角、阴影、渐变等等,通过这个工具,可以在线修改想要的效果,并即时生成css代码,有点意思了吧 ^^... 14-09-02...

首先看到能让ie8及以下的ie亲们用上css3的border-radius和gradient还有box-shadow着实兴奋了一大把。是的,你没有看错,用css3pie就可以了,想了解猛戳链接。这里也不介绍怎么使用了,官方有文档。

这是一坑

但还是要提一下,在使用过程中的pie路径一定要是相对于正在浏览页面的相对路径。如下代码的url路径不是相对于css文件所在路径。因为虽然是在css里写的url,但是是在css被应用前就对html起作用了。


复制代码
代码如下:

behavior: url(path/to/pie_files/pie.htc);

其中的pie.htc文件就是pie的灵魂所在了,当然你也可以用他zip包里的js来实现。(那个包里很全的,你根据自己要用的方法选择一个对应的文件就可以了,没必要全部贴到项目里)

这是第二坑

路径弄对了,想说,要在ie下看一看奇迹的出现!但!!注意这个但,第一次使用的时候,被pie处理的element背景就全消失了,重点是,官方的start教程根本没提这一情况。

如果出现这种情况,表示,你使用的方法是对的,其实pie已经生效了,至于为什么背景不见了,解决办法如下。


复制代码
代码如下:

yourcssselector{ position:relative;}
/*或者*/
yourcssselector{ position:absolute;}

如果还是没解决,请给你的element加上一个合适的z-index的属性。
然后一切就正常了

不要太天真

请不要在:after、:before中使用pie,这样完全无效。

来自jason的解释

复制代码
代码如下:

no, unfortunately. the reason is that pseudo-elements have no dom and therefore there's nothing that pie can manipulate.

最后我有一个很不解的问题,在fancybox上用pie,貌似不管怎么解决方法,背景还是不会出现!!如果有解决的朋友,一定要!!一定要告诉我!!!