div中有个ul,如何使这个ul在div中水平居中呢?

如题所述

<style>
*{margin:0;padding:0;border:0;}
.box{width:400px;height:100px;margin:0 auto}
.box ul{list-style:none;}
.box ul li{float:left;width:100px;height:100px;line-height:100px;background:#00aff0;text-align:center;font-size:14px;color:#fff;}
</style>
<div class="box">
<ul>
<li>演示效果</li>
<li>演示效果</li>
<li>演示效果</li>
<li>演示效果</li>
</ul>
</div>

上面是代码,把代码复制到html文件中,用浏览器打开看看吧。

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-02-13
必须设定div的高度和ul的高度,然后设定div垂直居中追问

你看我这个

div中有个

ul

每个li都是一张图

我想让这些li左右居中

整个ul左右居中

追答

要设定ul及div的宽度,然后设定ul的margin属性设为auto

如果你对上下有要求的话,设定margjn left right 属性设为auto即可!

追问

好的,我试一试

追答

还有一种方法就是,在Dom载入完后用js获得ul的宽度,再修改ul的width属性,再设定div的宽度及margin属性!

第2个回答  2016-02-14
在中间浮东西一般都是很头疼的。不过我一般用两种方法。追答

1. 将它外面放个table

table里面是有vertical align的(至少我是这么记得的,有段时间没网络编程了)

2. 在他的旁边放一个div 100%高度

然后vertical align

相似回答