2012-04-07 72 views
0

我在我的站点上有一个分页控件,它的容器元素设置为margin:auto,以便分页控件在元素中居中。它在除IE7以外的所有浏览器都很好用。事实上,我刚刚意识到我的网站有几个问题与IE7,我试图通过他们所有。不过,我一直坚持这一段。margin:auto在IE7中不工作

看看this page

(我知道在这个页面上还有其他的IE7问题,首先关注寻呼控制)。如果您使用IE9,则可以在菜单栏中点击F12并将“浏览器模式”设置为IE7。将其与任何其他浏览器/版本中的相同页面进行比较。

任何人都可以告诉我为什么这是基于我使用的CSS/HTML发生?我一直在努力,看起来像几个小时,我真的没有得到它的任何地方。

+1

你可以重新创建你的问题在jsfiddle什么的,所以我们不必筛选你的网站上的数百行代码? – 2012-04-07 04:09:30

+0

我在想有人可能会使用IE开发人员工具(如Firebug)来检查代码/样式,而不是实际阅读源代码。我确信这只是我错过的一件简单的事情。 – Scott 2012-04-07 04:12:08

+0

我在IE7与其他浏览器中看到的唯一区别是圆边和每页顶部的过滤器。没有看到有'margin:auto'的问题。哪个元素具体存在这个问题?也许我只是想念它... – 2012-04-07 04:21:11

回答

5

问题是,您依靠display: tableul收缩到其内部的宽度li s。不幸的是,display: table is not supported in IE7.

切换到display: inline-block是解决这个问题的一种方法。

previous_next_container_forum ul.list_paging,删除display: tableand add

display: inline-block; 
*display: inline; 
zoom: 1; 

ul现在是完全一样宽的li的内线吧,使用display: table

要使其居中,您需要将text-align: center添加到父元素,例如.previous_next_container_forum

+0

真棒,感谢您的快速,简洁的答案,工程! – Scott 2012-04-07 04:50:21