backa
11-29-2012, 07:54 AM
i would like the dropdown box of this menu to align centered, at the moment it aligns to the left. so the text should remain as it is, centered beneath the menu bar option, but the box itself should move according to the length of the text in the sub-menu options (equal spacing between edges of box and text, instead of too much on the right as it is now).
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Menu</title>
<link rel="stylesheet" href="menu.css">
</head>
<body>
<ul id="nav">
<li><a href="#">Option 1</a>
<ul>
<li><a href="#">sub-menu 1</a></li>
<li><a href="#">sub-menu 2</a></li>
<li><a href="#">sub-menu 3</a></li>
</ul>
</li>
<li><a href="#">Option 2</a>
<ul>
<li><a href="#">sub-menu 1</a></li>
<li><a href="#">sub-menu 2</a></li>
</ul>
</li>
<li><a href="#">Option 3</a>
<ul>
<li><a href="#">sub-menu 1</a></li>
<li><a href="#">long sub-menu 2</a></li>
<li><a href="#">sub-menu 3</a></li>
</ul>
</li>
</ul>
</body>
</html>
html {
padding:0px;
margin:0px;
}
body {
position: absolute;
background-color: white;
margin: 0 0 0 140px;
width: 900px;
height: auto;
color: black;
padding: 0;
}
#header {
margin: 5px 0px 10px 50px;
padding-top: 1px;
height: 140px;
width: 960px;
background-color: black;
}
#nav {
display: inline-block;
margin: 20px 0px 0px 0px;
padding: 4px 0px 0;
background: black;
border: solid 1px rgba(5, 5, 5, .3);
font: 13px 'arial';
}
#nav li {
margin: 0 0px;
padding: 0 0 6px;
float: left;
position: relative;
list-style: none;
}
#nav a {
font-weight: bold;
color: white;
text-decoration: none;
display: block;
padding: 8px 15px;
margin: 0;
}
#nav li:hover > a {
background: black;
color: white;
}
#nav li:hover li a {
background: black;
border: none;
color: white;
}
#nav ul li:hover a{
background: black;
border: none;
color: yellow;
}
#nav ul {
color: white;
display: none;
margin: 0;
padding: 0;
width: 150px;
position: absolute;
top: 36px;
left: 0;
z-index: 2;
}
#nav li:hover > ul {
display: block;
}
#nav ul li {
float: none;
margin: 0;
padding: 0;
}
#nav ul a {
font-weight: normal;
color: white;
}
/* clearfix */
#nav:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}
thanks in advance!
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Menu</title>
<link rel="stylesheet" href="menu.css">
</head>
<body>
<ul id="nav">
<li><a href="#">Option 1</a>
<ul>
<li><a href="#">sub-menu 1</a></li>
<li><a href="#">sub-menu 2</a></li>
<li><a href="#">sub-menu 3</a></li>
</ul>
</li>
<li><a href="#">Option 2</a>
<ul>
<li><a href="#">sub-menu 1</a></li>
<li><a href="#">sub-menu 2</a></li>
</ul>
</li>
<li><a href="#">Option 3</a>
<ul>
<li><a href="#">sub-menu 1</a></li>
<li><a href="#">long sub-menu 2</a></li>
<li><a href="#">sub-menu 3</a></li>
</ul>
</li>
</ul>
</body>
</html>
html {
padding:0px;
margin:0px;
}
body {
position: absolute;
background-color: white;
margin: 0 0 0 140px;
width: 900px;
height: auto;
color: black;
padding: 0;
}
#header {
margin: 5px 0px 10px 50px;
padding-top: 1px;
height: 140px;
width: 960px;
background-color: black;
}
#nav {
display: inline-block;
margin: 20px 0px 0px 0px;
padding: 4px 0px 0;
background: black;
border: solid 1px rgba(5, 5, 5, .3);
font: 13px 'arial';
}
#nav li {
margin: 0 0px;
padding: 0 0 6px;
float: left;
position: relative;
list-style: none;
}
#nav a {
font-weight: bold;
color: white;
text-decoration: none;
display: block;
padding: 8px 15px;
margin: 0;
}
#nav li:hover > a {
background: black;
color: white;
}
#nav li:hover li a {
background: black;
border: none;
color: white;
}
#nav ul li:hover a{
background: black;
border: none;
color: yellow;
}
#nav ul {
color: white;
display: none;
margin: 0;
padding: 0;
width: 150px;
position: absolute;
top: 36px;
left: 0;
z-index: 2;
}
#nav li:hover > ul {
display: block;
}
#nav ul li {
float: none;
margin: 0;
padding: 0;
}
#nav ul a {
font-weight: normal;
color: white;
}
/* clearfix */
#nav:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}
thanks in advance!