如何将无序列表居中<li>放置为固定宽度div?
<li>
div
<table width="100%"> <tbody> <tr> <td width="41%"><img src="/web/20100104192317im_/http://www.studioteknik.com/html2/html/images/hors-service.jpg" width="400" height="424"></td> <td width="59%"><p align="left"> </p> <h1 align="left">StudioTeknik.com</h1> <p><br align="left"> <strong>Marc-André Ménard</strong></p> <ul> <li>Photographie digitale</li> <li>Infographie </li> <li>Débug et IT (MAC et PC)</li> <li> Retouche </li> <li>Site internet</li> <li>Graphisme</li> </ul> <p align="left"><span class="style1"><strong>Cellulaire en suisse : </strong></span><a href="#">+41 079 573 48 99</a></p> <p align="left"><strong class="style1">Skype : </strong> <a href="#">menardmam</a></p> <p align="left"><strong class="style1">Courriel :</strong><a href="https://web.archive.org/web/20100104192317/mailto:menardmam@hotmail.com"> info@studioteknik.com</a></p></td> </tr> </tbody> </table>
由于ul和li元素是display: block默认设置-为它们提供自动边距,并且宽度小于其container。
ul
li
display: block
container
ul { width: 70%; margin: auto; }
如果您更改了它们的显示属性,或做了一些覆盖常规对齐规则的操作(例如浮动它们),则此操作将无效。
要使ul 居中并使li元素也居中,并使ul的宽度动态变化,请使用display:inline-block; 并将其包裹在居中的div中。
<style type="text/css"> .wrapper { text-align: center; } .wrapper ul { display: inline-block; margin: 0; padding: 0; /* For IE, the outcast */ zoom:1; *display: inline; } .wrapper li { float: left; padding: 2px 5px; border: 1px solid black; } </style> <div class="wrapper"> <ul> <li>Three</li> <li>Blind</li> <li>Mice</li> </ul> </div>