我创建了一个元素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;
}
任何建议将不胜感激! : - )
答案 0 :(得分:2)
所以我找到了自己问题的答案,就是这样:
Internet Explorer 8 将以下内容生成的内容视为之前和之后:<元素之外。
但是,所有其他浏览器( IE7 除外)会将:before和:after伪元素生成的内容视为元素的一部分。
所以我只需要写:
.ico-fonts:before {
text-align: center~"\9";
}
答案 1 :(得分:0)
您是否尝试过添加缩放:1?修复了很多IE8 CSS的怪癖。