具有Float属性的元素依然居中

(编辑:jimmy 日期: 2024/11/1 浏览:2)

第一种方法,需要对包含li的ul增加一些样式(需要一些Hack),并且同时对外层的div设置text-align:center属性。

以上两项必须同时设置,否则不起作用,此时就可以达到我们的目的了。

第二种方法,对ul和li均设置position: relative的属性也可行。

在各浏览器中测试,均正常显示。

关键样式


复制代码代码如下:display:inline-block; *display:inline; zoom:1;
测试代码

复制代码代码如下:
<div style="width: 300px; height: 28px; line-height: 28px; border: 1px solid #ccc; font-size: 12px; text-align: center;">
<ul style="list-style: none; margin: 0; padding: 0; float: left; position: relative; left: 50%;">
<li style="float: left; position: relative; right: 50%;">1.万年洪水</li>
<li style="float: left; position: relative; right: 50%; margin: 0 20px 0 20px;">2.千年洪水</li>
<li style="float: left; position: relative; right: 50%;">3.百年洪水</li>
</ul>
<div style="clear: both;"></div>
</div>


复制代码代码如下:
<div style="width: 300px; height: 28px; line-height: 28px; border: 1px solid #ccc; font-size: 12px; text-align: center;">
<ul style="list-style: none; margin: 0; padding: 0; display: inline-block; *display: inline; zoom: 1;">
<li style="float: left;">1.万年洪水</li>
<li style="float: left; margin: 0 20px 0 20px;">2.千年洪水</li>
<li style="float: left;">3.百年洪水</li>
</ul>
<div style="clear: both;"></div>
</div>