0
nav li a.home                   { background:url('../img/custom_icons/home.png') no-repeat center; background-size: 30px 30px; background-position: 0px -1px;}

nav li a.contact                { background:url('../img/custom_icons/email.png') no-repeat center; background-size: 32px 35px; background-position: 0px -1px; }

nav li a.show_all               { background:url('../img/custom_icons/slide.png') no-repeat center; background-size: 35px 50px; background-position: -5px -10px; }

#facebook {
    background: url(../img/custom_icons/facebook.png) no-repeat;
    background-size:30px 30px;
}

#sina {
    background: url(../img/custom_icons/sina.png) no-repeat;
    background-size:30px 30px;
}

我发现那些在 chrome / fx 或其他浏览器中的背景图像定位完美,但在 IE 8 中没有,它要么太小/太大,要么只是移动到其他地方。如何解决问题并与其他浏览器一样工作? 谢谢

更新:添加 ms 过滤器后,仍然无法正常工作?

nav li a.home                   { background:url('../img/custom_icons/home.png') no-repeat center; background-size: 30px 30px; background-position: 0px -1px;}

filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(
src='../img/custom_icons/home.png',
sizingMethod='scale');

-ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(
src='../img/custom_icons/home.png',
sizingMethod='scale')";

这是添加建议的过滤器后的 css 文件。但是,它仍然无法正常工作?像这样放置代码是否正确?这似乎很奇怪,因为有一个 ; 最后和一个 " after ='scale') 。谢谢

4

2 回答 2

2

“背景大小”不适用于 IE8。

http://caniuse.com/#feat=background-img-opts

于 2013-01-25T02:26:24.390 回答
1

这里的答案https://stackoverflow.com/a/6353808/358906可能比我下面的原始答案更好。


在 IE8 中,确保浏览器模式设置为 IE8 标准,如果不是,请更改它,看看它是否能解决您的问题。如果它解决了问题,那么您将需要通过使用元标记或服务器标头来确保 IE8 始终使用 I8 标准模式。

IE8 开发者工具

于 2013-01-25T02:25:16.510 回答