2

我创建了一个h4元素,该元素用:before伪元素插入图标字体(在IcoMoon生成)。h4元素设置为,text-align: center;图标设置为,display: block;以便它们也居中。完美的!

问题出在 IE8 中。h4元素居中,但插入的图标是:before左对齐的。我试过给 before 元素一个text-align: center属性,我也尝试过应用:

display: block;
width: 80px;
margin: 0 auto;

现在我不知道下一步该尝试什么。这是图标的代码:

[class^="ico-fonts-"]:before, 
[class*=" ico-fonts-"]:before {
    font-family: @icoFont;
    font-style: normal;
    speak: none;
    font-weight: normal;
    line-height: 1;
}

任何建议,将不胜感激!:-)

4

2 回答 2

2

所以我找到了我自己问题的答案,就是这样:

Internet Explorer 8将 :before 和 :after 生成的内容视为元素之外的内容

但是,所有其他浏览器(IE7除外)都将 :before 和 :after 伪元素生成的内容视为元素的一部分

所以我只需要写:

.ico-fonts:before { text-align: center~"\9"; }

于 2013-02-15T18:18:09.687 回答
0

Have you tried adding zoom:1 yet? Fixes a lot of IE8 CSS quirks.

于 2013-01-11T10:49:19.610 回答