Css UL在div浮子内时未居中:对

Css UL在div浮子内时未居中:对,css,Css,请在此处查看小提琴,以获取示例: 基本上,我正试图使UL集中在它的父div中 每个li都有一个宽度,如果我使用内联,它将不会以宽度进行渲染。如果我使用内联块,IE不会正确渲染,但FF会。如何实现这一点?在li元素上使用display:inline而不是float:left,如下所示: 尝试显示:内联块而不是浮动:左。 通过这种方式,您可以获得边距和填充,以及内联行为 IE8不能很好地与内联块一起工作,因为它有一个名为hasLayout的专有概念的bug。如果一个项目!hasLayout,它被认

请在此处查看小提琴,以获取示例:

基本上,我正试图使
UL
集中在它的父
div


每个
li
都有一个
宽度
,如果我使用
内联
,它将不会以宽度进行渲染。如果我使用
内联块
,IE不会正确渲染,但FF会。如何实现这一点?

li
元素上使用
display:inline
而不是
float:left
,如下所示:


尝试显示:内联块而不是浮动:左。 通过这种方式,您可以获得边距和填充,以及内联行为


IE8不能很好地与内联块一起工作,因为它有一个名为
hasLayout
的专有概念的bug。如果一个项目
!hasLayout
,它被认为是内联的

要在IE8中修复它,只需给它一些属性,它将触发
hasLayout==true
。最简单的方法是再次使用ms专有
zoom:1


要了解更多详细信息,请查看这篇非常深入的文章:

当我这样做时,我会丢失所有的宽度和边距,请参见这里:我做了
内联块
,但我没有在IE中获得水平位置,它认为它的
最接近工作状态,但
内联块
在IE8中无法正确渲染,我如何让它也在IE8中工作?