Reputation: 1449
I want to make the menu contents center aligned. I have 2 files: index.html and style.css
HTML [index.html]:
<div id="container">
<div id="menu">
<ul>
<li><a href="">Home</a></li>
<li><a href="">News</a></li>
<li><a href="">Contact</a></li>
<li><a href="">About</a></li>
</ul>
</div>
<div class="clear"></div>
<div id="header">
<h1 id="logo">Lorem Ipsum</h1>
</div>
<div class="left">
<div class="content">
<div class="contentHeader"> What is Lorem Ipsum? </div>
<div class="contentBody"> Lorem Ipsum is simply dummy text of the printing and typesetting industry. </div>
<div class="content">
<div class="contentHeader"> Where does it come from? </div>
<div class="contentBody"> Contrary to popular belief, Lorem Ipsum is not simply random text. </div>
</div>
</div>
<div class="center">
<div class="content">
<div class="contentHeader"> Where do we use it? </div>
<div class="contentBody"> It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. </div>
</div>
</div>
<div class="right">
<div class="content">
<div class="contentHeader"> Where do we use it? </div>
<div class="contentBody"> It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. </div>
</div>
</div>
</div>
CSS [style.css]:
ul {
list-style-type: none;
margin: auto;
padding: 0;
}
a {
text-decoration: none;
display: block;
width: 80px;
height: 30px;
padding: 10px 10px 10px 10px;
color: white;
font-weight: bold;
text-align: center;
}
a:hover { background-color: #16a085; }
li {
float: left;
font-family: arial;
font-size: 20px;
}
#menu {
background-color: #1abc9c;
height: 50px;
width: 100%;
position: fixed;
z-index: 1;
left: 0px;
top: 0px;
}
#header {
width: 100%;
height: 100px;
background-color: #2ecc71;
position: absolute;
border-radius: 5px;
top: 50px;
}
#container { position: relative; }
#logo {
font-family: arial;
color: #3498db;
padding-left: 20px;
}
.right {
width: 25%;
height: 1000px;
background-color: #2980b9;
border-radius: 5px;
float: right;
margin-top: 160px;
}
.left {
width: 34%;
height: 1000px;
background-color: #f39c12;
border-radius: 5px;
float: left;
margin-top: 160px;
}
.clear { clear: both; }
.content { margin: 30px 30px 30px 30px; }
.contentHeader {
font-family: impact;
color: #bdc3c7;
font-size: 25px;
margin-bottom: 20px;
}
.contentBody {
font-family: arial;
color: #ecf0f1;
font-size: 15px;
margin-bottom: 20px;
}
.center {
width: 38%;
height: 1000px;
background-color: #f39c12;
border-radius: 5px;
margin-top: 160px;
position: absolute;
margin-left: 560px;
}
How can I make the menu items appear at the center? It is now appearing in the left.
Upvotes: 0
Views: 110
Reputation: 3755
Solution-1
Add these two properties to your css.
#menu
{
text-align:center;
}
ul{
display:inline-block;
}
Solution-2
Add this property to your ul
:
ul{
display:table;
}
Upvotes: 1
Reputation: 488
Try this:
ul
{
list-style-type:none;
margin:auto;
padding:0;
text-align:center;
}
li
{
font-family:arial;
font-size:20px;
display:inline-block;
}
Remove float:left
and add text-align:center
and display:inline-block
Upvotes: 1
Reputation: 1776
Just give display: -webkit-flex
to the #menu
Working Code:JSFIDDLE
Using the above property depends on the browser.if you are using mozilla you will have to add
display: -moz-flex
Upvotes: 0
Reputation: 2528
If you give the ul
within the menu
div a fixed width, you can apply margin:0 auto;
HTML:
<div id="menu">
<ul class="centerMargin">
CSS
.centerMargin
{
width:450px;
margin:0 auto;
}
Upvotes: 0