1

我有一个页脚菜单,它应该在屏幕上水平居中,里面的元素然后在页脚容器中水平居中(见下图)。这在除 IE7(这是我们希望支持的最低版本的 IE)之外的所有浏览器中都可以正常工作。我不明白为什么这不起作用。我已经在这个小提琴中复制了代码,但是小提琴似乎也没有正确对齐它(所以如果需要,我可以提供指向该站点的链接):

http://jsfiddle.net/jezzpin/tz5Ym/

有没有人知道为什么这在 IE7 中不起作用?我需要执行 IE7 特定的 hack 吗?

在其他人陈述明显之前:

  • 是的,我已经在使用 margin:auto 作为水平边距。
  • 是的,我已经声明了我的 Doctype

    jme1988
    

正确显示: 正确显示

IE7 显示: IE7 显示

4

3 回答 3

3

你愿意在你的代码中使用 CSS hacks 吗?如果是这样,您可以使用每个浏览器的 CSS 实现中的已知错误来定位特定的 IE 版本。请参阅有关该主题的 NetTuts 帖子

例如:

body {  
  color: red; /* all browsers, of course */  
  color : green\9; /* IE8 and below */  
  *color : yellow; /* IE7 and below */  
  _color : orange; /* IE6 */  
} 
于 2012-12-20T11:37:43.500 回答
1

填充似乎不适用于非块元素,所以我不得不使用:

display: block;

强制 IE7 接受样式。

于 2012-12-21T10:23:21.377 回答
-1

当您想要居中的元素使用绝对宽度时,使用以下是旧 Internet Explorer 的解决方法:

div.center{
  width:1024px;
  left:50%;
  margin-left:-512px;
}

另外:您是否声明了您的文档类型?

于 2012-12-20T12:10:17.117 回答