This list is working great for me but the text within the <li> elements is not centering.
The <li>s must auto resize to their content.
#nav-menu {
font-family: Verdana, Arial, Helvetica, sans-serif;
height: 30px;
background-image: url(../img/menu_bg.png);
background-repeat: repeat-x;
border-bottom: dotted thin #666666;
border-top: dotted thin #666666;
text-align: center;
width: 800px;
}
#nav-menu ul {
list-style: none;
padding: 0;
margin: auto 0;
}
#nav-menu li {
float: left;
border-right: dotted thin #666666;
list-style: none;
padding: 0.5em 2em 0.5em 0.75em;
}
#nav-menu li a {
line-height: 1.5em;
color: #333333;
text-decoration: none;
font-size: 12px;
font-weight: bold;
display: block;
}
<div id="nav-menu">
<ul>
<li class="current_page_item"><a href="#" title="Home">Home</a>
<li class="current_page_item"><a href="#" title="Home">Home</a>
<li class="current_page_item"><a href="#" title="Home">Home</a>
<li class="current_page_item"><a href="#" title="Home">zxczczxczHome</a>
</ul>
</div>
While you’re assigning unequal
paddingvalues to the left and right of theli(0.75emand2emrespectively) the text can’t be centred since you’re forcing it off-centre with thepadding.If you amend the padding to:
padding: 0.5em 1em;(0.5emtop and bottom,1emleft and right) then it can be centred.JSFiddle demo of the above.