7

我有我需要居中的网站导航列表项。我是浮动的,以便可以在列表项上进行填充...将它们设置为内联似乎可以消除顶部和底部填充。

<style type="text/css">

   #nav {
       width:100%;
   }

   #nav ul {
       margin-right: auto;
       margin-left: auto;
   }

   #nav ul li {
      float: left;
      background-color: #333;
      color: #fff;
      padding: 15px;
      margin: 10px;
   }

</style>

<div id='nav'>

   <ul>
      <li>Item 1</li>
      <li>Item 2</li>
      <li>Item 3</li>
      <li>Item 4</li>
  </ul>

</div>
4

4 回答 4

15

通过使项目内联显示,您可以将它们对齐为文本。设置行高固定换行问题。

 #nav{
        text-align: center;
        line-height:30px;

    }

    #nav li {
        list-style:none;
        margin: 0 5px;
        display:inline;
        border:gray solid 1px;
    }

工作演示可以在这里看到:http: //jsfiddle.net/AqRJA/1/

于 2014-04-01T15:12:12.250 回答
2

尝试将您的 CSS 更改为:

#nav ul{

margin-right:auto;
margin-left:auto;
text-align:center;

}

#nav ul li{
display:inline;
background-color:#333;
color:#fff;
padding:15px;
margin:10px;

}

干杯,

辛西娅

于 2013-06-24T00:38:07.433 回答
1

ul宽度

用这个替换你的班级

   #nav ul {
       margin-right: auto;
       margin-left: auto;
       width:400px;
   }
于 2013-06-24T05:27:11.193 回答
0

我经历过同样的事情太多次了。

您不能使用 % 布局来居中,您必须以像素或 em 为单位。

所以我改变了你的代码给 div 一个特定的宽度,然后将它居中。

`<div class="centerme">
      <!--put your stuff here-->
   </div>`   

这是jsfiddle:

http://jsfiddle.net/EqNtH/

于 2013-06-24T00:43:35.230 回答