I want to center the Individual Menu items within this Horizontal CSS menu (obtained from purecssmenu.com).
They are currently floating to the left and I want them to be centered
<div class="wrapper">
<ul class="pureCssMenu pureCssMenum">
<li class="pureCssMenui"><a class="pureCssMenui" href="#">Menu1</a></li>
<li class="pureCssMenui"><a class="pureCssMenui" href="#"><span>Menu2</span><![if gt IE 6]></a><![endif]><!--[if lte IE 6]><table><tr><td><![endif]-->
<ul class="pureCssMenum">
<li class="pureCssMenui"><a class="pureCssMenui" href="#">Submenu1</a></li>
<li class="pureCssMenui"><a class="pureCssMenui" href="#"><span>Submenu2</span><![if gt IE 6]></a><![endif]><!--[if lte IE 6]><table><tr><td><![endif]-->
<ul class="pureCssMenum">
<li class="pureCssMenui"><a class="pureCssMenui" href="#">Submenu3</a></li>
<li class="pureCssMenui"><a class="pureCssMenui" href="#">Submenu4</a></li>
<li class="pureCssMenui"><a class="pureCssMenui" href="#">Submenu5</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]--></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]--></li>
<li class="pureCssMenui"><a class="pureCssMenui" href="#"><span>Menu3</span><![if gt IE 6]></a><![endif]><!--[if lte IE 6]><table><tr><td><![endif]-->
<ul class="pureCssMenum">
<li class="pureCssMenui"><a class="pureCssMenui" href="#">Submenu1</a></li>
<li class="pureCssMenui"><a class="pureCssMenui" href="#">Submenu2</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]--></li>
<li class="pureCssMenui"><a class="pureCssMenui" href="#">Menu4</a></li>
<li class="pureCssMenui"><a class="pureCssMenui" href="#">Menu5</a></li>
</ul>
</div>
The complete HTML markup and CSS is available at this JsFiddle http://jsfiddle.net/28X9v/
The solution should be cross browser compatible and should atleast work in ie7/8
Remove float from your li's
: Demo
ul.pureCssMenu, ul.pureCssMenu ul {text-align:center;}
ul.pureCssMenu li { display:inline-block;}
hey view testing this code
.pureCssMenum li > ul.pureCssMenum li{
float: left;
}
.pureCssMenum li > ul.pureCssMenum > li > ul.pureCssMenum{
position:absolute;
top:40px;
}
.pureCssMenum li > ul.pureCssMenum > li > ul.pureCssMenui li{
float:none;
position:relative;
}
Make the following changes to your css
To increase the submenu width to accomodate right shifting
ul.pureCssMenu ul {
width:110px;
}
and change the margin values to shift menu items to right
ul.pureCssMenu li {
display:block;
margin:2px 0px 2px 18px;
font-size:0px;
}
You can change the last param of margin property to shift the elements more towards right.
here is the fiddle http://jsfiddle.net/28X9v/3/
I think this is the answer you want.
<span>....</span>
is used for aligning in the code . That's it.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.