如何将css3应用于IE8中的伪元素

如何将css3应用于IE8中的伪元素,css,internet-explorer-8,internet-explorer-7,pseudo-element,Css,Internet Explorer 8,Internet Explorer 7,Pseudo Element,我目前正在做一个项目,我使用这两个库:和 不幸的是,无论是在IE7还是IE8中,我都无法将CSS3(渐变或边界半径)应用于伪元素,如:before和:after 有人知道我如何做到这一点吗?IE7不支持:before和:before生成的内容,因此使用VML DOM和HTML DOM的组合来模拟内容本身,然后使用DHTML过滤器在这些元素上应用CSS3仿真,并使用ie7.js和css3pie在幕后进行转换。IE8确实支持:before和:after生成的内容,但具有讽刺意味的是,这破坏了CSS3

我目前正在做一个项目,我使用这两个库:和

不幸的是,无论是在IE7还是IE8中,我都无法将CSS3(渐变或边界半径)应用于伪元素,如
:before
:after


有人知道我如何做到这一点吗?

IE7不支持
:before
:before
生成的内容,因此使用VML DOM和HTML DOM的组合来模拟内容本身,然后使用DHTML过滤器在这些元素上应用CSS3仿真,并使用ie7.js和css3pie在幕后进行转换。IE8确实支持
:before
:after
生成的内容,但具有讽刺意味的是,这破坏了CSS3仿真层,因为没有。使用条件注释仅为IE8创建
:before
:after
内容的副本,将它们定位到与IE7中的位置相匹配的位置,然后对它们应用css3pie效果。

出于某种原因,它在IE7中有效,但在IE8中无效无论如何都不是最好的选择,但您可以强制IE8作为IE7运行。不是建议这样做,但如果你陷入困境,它可能会帮助你。另一个注意:IE8将样式应用于整个元素,而不是:before伪元素,即:h2:before{…}使h2看起来像h2:before中定义的那样。。。奇怪!