having trouble with css menu - css

I have a menu like :
<ul id="nav">
<li><span>First link</span>
<ul class="extlang2">
<li class="extli"><span>A</span>
<ul class="extlang2">
<li class="extli"><span>C</span></li>
<li class="extli"><span>D</span></li>
<li class="extli"><span>E</span>
<ul class="extlang2">
<li class="extli"><span>F</span></li>
<li class="extli"><span>G</span></li>
<li class="extli"><span>H</span></li>
<li class="extli"><span>I</span></li>
<li class="extli"><span>J</span></li>
<li class="extli"><span>K</span></li>
<li class="extli"><span>L</span></li>
<li class="extli"><span>M</span></li>
</ul>
</li>
<li class="extli"><span>F</span></li>
<li class="extli"><span>G</span></li>
<li class="extli"><span>H</span></li>
<li class="extli"><span>I</span></li>
<li class="extli"><span>J</span></li>
<li class="extli"><span>K</span></li>
<li class="extli"><span>L</span></li>
<li class="extli"><span>M</span></li>
</ul>
</li>
<li class="extli"><span>B</span></li>
<li class="extli"><span>C</span></li>
<li class="extli"><span>D</span></li>
<li class="extli"><span>E</span></li>
<li class="extli"><span>F</span></li>
<li class="extli"><span>G</span></li>
<li class="extli"><span>H</span></li>
<li class="extli"><span>I</span></li>
<li class="extli"><span>J</span></li>
<li class="extli"><span>K</span></li>
<li class="extli"><span>L</span></li>
<li class="extli"><span>M</span></li>
<li class="extli"><span>N</span></li>
<li class="extli"><span>O</span></li>
<li class="extli"><span>P</span></li>
<li class="extli"><span>Q</span></li>
<li class="extli"><span>R</span></li>
<li class="extli"><span>S</span></li>
<li class="extli"><span>T</span></li>
<li class="extli"><span>U</span></li>
<li class="extli"><span>V</span></li>
<li class="extli"><span>W</span></li>
<li class="extli"><span>X</span></li>
<li class="extli"><span>Y</span></li>
<li class="extli"><span>Z</span></li>
</ul>
</li>
<li><span>Second link</span>
<li><span>Third link</span>
</ul>
How can I show the menu and submenu (which will be open by li:hover) like the picture?
[I used float:left for l but the menu items were shown like 'A B C D E F' etc. but not like the picture]
edit :
my css (sorry,my css is messed up which didn't fulfil my requirement, as you see its not like the picture)
<style type="text/css">
#nav{
list-style-type:none;
}
#nav li {
margin: 0 5px;
padding: 0 0 8px;
position: relative;
list-style: none;
}
/* main level link */
#nav a,
#nav ul li:hover a,
#nav li:hover li a{
text-decoration:none;
color:#ddd;
font-weight:bold;
font-size:13px;
font-family:Arial;
line-height:55px;
height:55px;
width: 139px;
display:block;
}
#nav a span{
position:relative;
margin-right:30px;
}
#nav li:hover > a:first-child,
#nav a:hover,
#nav ul a:hover{
font-weight:bold;
color:#ff0000;
text-decoration:none;
background-color:#fff;
}
#nav li:hover > ul {
display: block;
}
/* level 2 list */
#nav ul {
display: none;
margin: 0;
padding: 0;
position: absolute;
border:1px dotted #eee;
bottom:0px;
left: -139px;
}
#nav ul li {
float: none;
margin: 0;
padding: 0;
}
#nav ul a {
font-weight: normal;
text-shadow: 0 1px 0 #fff;
}
#nav ul li a{
text-align:center !important;
}
#nav ul li a span{
margin:0px auto !important;
}
/* level 3+ list */
#nav ul ul {
left: -139px;
bottom:0px;
border:1px dotted #eee;
}
/* -------------extension area------- */
.extli{
float:left !important;
.extlang2 a{
overflow:hidden;
}
</style>

http://jsfiddle.net/6yQkF/
ul li {
float:left;
width: 100px;
}
ul ul {
display: none;
}
ul li:hover > ul {
display: block;
}
li {
border:1px solid #000;
background:#F00;
list-style:none;
}

Related

CSS menu hover colors and background colors

i have this CSS for my menu:
.menu-product-categories-container {
display:block;
width:100%;
height:60px;
background:#F36F25;
}
#menu-product-categories {
list-style: none;
padding: 0;
margin: 0;
text-align:center;
height:100%;
z-index: 0;
}
#menu-product-categories > li {
display: inline-block;
z-index:9999;
position:relative;
padding:21px 8px;
text-decoration:none;
}
#menu-product-categories li > a {
display: block;
}
#menu-product-categories > li:hover {
background:#FFFFFF;
color:#F36F25;
}
#menu-product-categories > li > a:hover {
color:inherit;
}
#menu-product-categories ul.sub-menu {
list-style: none;
padding: 0;
margin: 0;
display:none;
width:200px;
position:absolute;
z-index:1;
left:0;
top:60px;
background: #FFFFFF;
}
#menu-product-categories li:hover ul.sub-menu {
display: block;
max-height: 200px;
background: #FFFFFF;
}
#menu-product-categories ul.sub-menu li {
color:#FFFFFF;
padding:5px;
}
#menu-product-categories ul.sub-menu li:hover {
color:#F36F25;
background:#000000;
float:none;
padding:5px;
}
How can i make the item color white?
i tried adding color:#FFFFFF; to #menu-product-categories li > a { but it is affecting the sub menu colors.
I want to make the items white and then the sub menu background colour #F35F25 and the sub menu items with white text and then on hover #F36F25 text and white background
Just need to add another child selection > to your selector, making it #menu-product-categories > li > a { color: #FFFFFF; }. This limits the styling to affecting the first level menu items and not the submenus. See https://jsfiddle.net/6dyckmtj/1/
You can make your selectors more specific by including the sub-menu class before targeting the anchor link tag, eg:
#menu-product-categories li .sub-menu a
Updated Fiddle:
https://jsfiddle.net/6dyckmtj/4/
Expand the snippet below for an example:
.menu-product-categories-container {
display:block;
width:100%;
height:60px;
background:#F36F25;
}
#menu-product-categories {
list-style: none;
padding: 0;
margin: 0;
text-align:center;
height:100%;
z-index: 0;
}
#menu-product-categories > li {
display: inline-block;
z-index:9999;
position:relative;
padding:21px 8px;
text-decoration:none;
}
#menu-product-categories li > a {
display: block;
}
#menu-product-categories > li:hover {
background:#FFFFFF;
color:#F36F25;
}
#menu-product-categories > li > a {
color:#FFFFFF;
}
#menu-product-categories > li:hover > a {
color:#F36F25;
}
#menu-product-categories ul.sub-menu {
list-style: none;
padding: 0;
margin: 0;
display:none;
width:200px;
position:absolute;
z-index:1;
left:0;
top:60px;
background: #FFFFFF;
}
#menu-product-categories li:hover ul.sub-menu {
display: block;
max-height: 200px;
background: #F36F25;
}
#menu-product-categories ul.sub-menu li {
color:#FFFFFF;
}
#menu-product-categories ul.sub-menu li:hover {
color:#F36F25;
background:#FFFFFF;
float:none;
}
#menu-product-categories li .sub-menu a {
background: #F35F25;
color: white;
padding: 10px;
box-sizing: border-box;
}
a {
transition: .7s;
}
#menu-product-categories li .sub-menu a:hover {
background: white;
color: #F36F25;
}
<div class="menu-product-categories-container">
<ul id="menu-product-categories" class="menu">
<li id="menu-item-2933" class="menu-item menu-item-type-taxonomy menu-item-object-product_cat current-menu-item menu-item-2933">Desk Phones</li>
<li id="menu-item-2934" class="menu-item menu-item-type-taxonomy menu-item-object-product_cat menu-item-2934">Headsets</li>
<li id="menu-item-2931" class="menu-item menu-item-type-taxonomy menu-item-object-product_cat menu-item-2931">Conference Phones</li>
<li id="menu-item-2932" class="menu-item menu-item-type-taxonomy menu-item-object-product_cat menu-item-2932">Dect Phones</li>
<li id="menu-item-2935" class="menu-item menu-item-type-taxonomy menu-item-object-product_cat menu-item-2935">Routers</li>
<li id="menu-item-2936" class="menu-item menu-item-type-taxonomy menu-item-object-product_cat menu-item-2936">Switches
<ul class="sub-menu">
<li>Dropdown 1</li>
<li>Dropdown 2</li>
<li>Dropdown 3</li>
<li>Dropdown 4</li>
</ul>
</li>
<li id="menu-item-2930" class="menu-item menu-item-type-taxonomy menu-item-object-product_cat menu-item-2930">CCTV</li>
</ul>
</div>

Cannot make menubar dropdown hover properly

I have a menu bar which has 8 to 9 menus horizontally of different character length.
Also, each and every menu has sub menus of different character length.
All I want is -
1. all the menus should be across the page (should fill the html body width that i have decided)
2. all the sub menus should be drop down and will be of same width like as the parent menu width.
All i can do is, i have stretched menu bar so that it can fill the html body width and they took symmetrical width. but i cannot make the sub menus to be drop down one after another.
I have also attched examplary pictures of what i want
HTML
<div id="header_menu">
<ul >
<li>Product Repository
<ul>
<li>Insert</li>
<li>Search & Edit</li>
<li>File Upload</li>
</ul>
</li>
<li>Inventory Inspection
<ul>
<li>Insert</li>
<li>Search & Edit</li>
<li>Reprint</li>
<li>Inventory Report</li>
</ul>
</li>
<li>Reports
<ul>
<li>Insert</li>
<li>Search & Edit</li>
</ul>
</li>
</ul>
</div>
CSS
body
{
width: 80%;
margin-left: auto;
margin-right: auto;
text-align:center;
}
HTML is already provided. i'm providing the working CSS for me. hope
it else somebody else.
#header_menu {
height: 10%;
margin-bottom: 2px;
width: 100%;
}
#header_menu ul li ul {
position: absolute;
float: left;
}
#header_menu ul {
margin: 0px;
padding: 0px;
list-style-type: none;
display: table;
width: 100%;
height: 10%;
position: relative;
z-index: 597;
}
#header_menu ul li ul li a {
visibility: hidden;
height: 0px;
width: 100%;
}
#header_menu ul li:hover ul li a {
height: 10%;
visibility: visible;
width: 100%;
}
#header_menu ul li {
position: relative;
display: table-cell;
list-style-type: none;
}
#header_menu ul li a {
display: block;
color: #FFF;
text-decoration: none;
background-color: #333;
font-family: Meiryo, "Meiryo UI", "Microsoft Sans Serif", "MS Outlook";
font-weight: lighter;
font-size: 12px;
border-right-width: thin;
border-bottom-width: thin;
border-right-style: inset;
border-bottom-style: inset;
border-right-color: #999;
border-bottom-color: #999;
}
#header_menu ul li ul li {
width: 100%;
float: left;
}
#header_menu ul li a:hover {
font-family: Meiryo, "Meiryo UI", "Microsoft Sans Serif", "MS Outlook";
font-size: 12px;
font-weight: lighter;
background-color: #000;
}
There is jsfiddle example toked from CSS Menu Maker site
I made some little changes to simplify example.
Little update, nothing special
Update (fiddle too):
<div id='cssmenu'>
<ul>
<li>Product Repository
<ul>
<li>Insert</li>
<li>Search & Edit</li>
<li>File Upload</li>
</ul>
</li>
<li>Inventory Inspection
<ul>
<li>Insert</li>
<li>Search & Edit</li>
<li>Reprint</li>
<li>Inventory Report</li>
</ul>
</li>
<li>Reports
<ul>
<li>Insert</li>
<li>Search & Edit</li>
</ul>
</li>
</ul>
</div>
and css :
#cssmenu {padding: 0; margin: 0; border: 0;}
#cssmenu ul, #cssmenu li {list-style: none; margin: 0; padding: 0;}
#cssmenu ul {position: relative; z-index: 597; }
#cssmenu ul li { float: left; min-height: 1px; vertical-align: middle; border:solid 1px blue; width:150px;}
#cssmenu ul li.hover,
#cssmenu ul li:hover {position: relative; z-index: 599; cursor: default; background-color:yellow;}
#cssmenu ul ul {visibility: hidden; position: absolute; top: 100%; left: 0; z-index: 598; width: 150px;}
#cssmenu ul ul li {float: none; margin-left:-1px; width:150px; border:solid 1px red;}
#cssmenu ul li:hover > ul { visibility: visible;}
#cssmenu ul ul {bottom: 0; left: 0;}
#cssmenu ul ul {margin-top: 0; }
#cssmenu ul ul li {font-weight: normal;}
#cssmenu a { display: block; /*line-height: 1em;*/ text-decoration: none; }
It's not pretty but You can see the point.
Update (code changed):
#cssmenu
{
padding:0;
margin:0;
display:block;
}
a {text-decoration:none; color:black; width:100%; box-sizing:border-box; display:block;}
#cssmenu ul
{
position:relative;
margin:0;
padding:0;
cursor:default;
display:table;
width:100%;
border:solid 1px gray;
}
#cssmenu ul li, #cssmenu ul li:last-child
{
list-style-type:none;
display:table-cell;
text-align:center;
vertical-align:middle;
padding-top:3px;
padding-bottom:3px;
border-right:solid 1px gray;
margin:0;
position:relative;
}
#cssmenu ul li:last-child {border:none;}
#cssmenu ul li:hover {background-color:yellow;}
#cssmenu ul li:hover > a {color: red;}
#cssmenu ul ul
{
visibility:hidden;
position:absolute;
top:100%;
margin:0;
margin-left:-1px;
z-index:101;
display:block;
}
#cssmenu ul ul li, #cssmenu ul ul li:last-child
{
display:block;
width:100%;
box-sizing:border-box;
border:none;
border-bottom:solid 1px gray;
}
#cssmenu ul ul li:last-child {border:none;}
#cssmenu ul ul li:hover
{
background-color:navy;
}
#cssmenu ul li li:hover > a {color:white;}
#cssmenu ul li:hover > ul {visibility:visible;}
<div id='cssmenu'>
<ul>
<li>Product Repository
<ul>
<li>Insert</li>
<li>Search & Edit</li>
<li>File Upload</li>
</ul>
</li>
<li>Inventory Inspection
<ul>
<li>Insert</li>
<li>Search & Edit</li>
<li>Reprint</li>
<li>Inventory Report</li>
</ul>
</li>
<li>Reports
<ul>
<li>Insert</li>
<li>Search & Edit</li>
</ul>
</li>
<li>Product Repository
<ul>
<li>Insert</li>
<li>Search & Edit</li>
<li>File Upload</li>
</ul>
</li>
<li>Inventory Inspection
<ul>
<li>Insert</li>
<li>Search & Edit</li>
<li>Reprint</li>
<li>Inventory Report</li>
</ul>
</li>
<li>Reports
<ul>
<li>Insert</li>
<li>Search & Edit</li>
</ul>
</li>
<li>Product Repository
<ul>
<li>Insert</li>
<li>Search & Edit</li>
<li>File Upload</li>
</ul>
</li>
<li>Inventory Inspection
<ul>
<li>Insert</li>
<li>Search & Edit</li>
<li>Reprint</li>
<li>Inventory Report</li>
</ul>
</li>
<li>Product Repository
<ul>
<li>Insert</li>
<li>Search & Edit</li>
</ul>
</li>
</ul>
</div>
Try this solution, but when You Run code snippet switch it to Full Page. I hope so this is what You want. But, always but, if Your window is too small, You can't avoid item values in two rows.

Horizontal Drop down menu, trying to create another submenu within a submenu

Under my view menu, I am attempting to create a new submenu within a submenu without any sucess. How can the existing CSS code be modified such that the submenu2 under the view menu behaves and looks like all my other sub menus?
Thanks.
<!DOCTYPE html>
<html>
<head>
<style>
#menu_container {
width: 100%;
background: rgb(250,252,254);
border: 1px solid rgb(128,128,128);
font-family: Arial;
font-size: 9pt;
}
ul#menu, ul.submenu{
margin: 0;
padding: 0;
list-style: none;
}
ul#menu li{
float: left;
}
/* hide the submenu */
li ul.submenu {
display: none;
}
ul#menu li a{
display: block;
text-decoration: none;
padding: 7px 14px;
float:none;
color: rgb(51,51,51);
}
/* show the submenu */
ul#menu li:hover ul.submenu{
display: block;
position: absolute;
float:left;
border: 1px solid rgb(128,128,128);
}
ul#menu li:hover li, ul#menu li:hover a {
float: none;
background: rgb(230,240,254);
color: #000;
}
ul#menu li:hover li a {
background: rgb(250,252,254);
color: rgb(51,51,51);
}
ul#menu li:hover li a:hover {
background: rgb(230,240,254);
color: #000;
}
</style>
</head>
<body>
<div id="menu_container">
<ul id="menu">
<li>File
<ul class="submenu">
<li>Close</li>
</ul>
</li>
<li>Edit
<ul class="submenu">
<li>Submenu 1</li>
<li>Submenu 2</li>
</ul>
</li>
<li>View
<ul class="submenu">
<li>Submenu 1</li>
<ul><li>Submenu 2</li></ul>
<li>Submenu 2</li>
</ul>
</li>
<li>Logoff</li>
</ul>
</div>
</body>
</html>
You need to make a few changes:
On Html place the "subsubmenu" inside the li and give it the classname submenu :
<li>
Submenu 1
<ul class="submenu">
<li>SubSubmenu 2</li>
</ul>
</li>
And on CSS this:
Show only direct children submenu for each li not all submenus with >
ul#menu li:hover > ul.submenu{
....
}
Make new selector for subsubmenu
ul.submenu li:hover > ul.submenu{
display: block;
position:absolute;
left:100%;
top:0;
border: 1px solid rgb(128,128,128);
}
The demo http://jsfiddle.net/mK7qS/7/

CSS submenu positioning

is it possible to keep the position of the 2nd level billboard fixed to the top as opposed to moving down the page on hover?
Code
HTML
<ul id="nav">
<li>STUFF
<ul>
<li>STUFF
<ul>
<li>
<div>LINK LINK ></div>
</li>
</ul>
</li>
<li>STUFF
<ul>
<li>
<div>LINK LINK ></div>
</li>
</ul>
</li>
<li>STUFF
<ul>
<li>
<div>LINK LINK ></div>
</li>
</ul>
</li>
<li>STUFF
<ul>
<li>
<div>LINK LINK ></div>
</li>
</ul>
</li>
<li>STUFF
<ul>
<li>
<div>asdasdasd</div>
</li>
</ul>
</li>
<li>STUFF
<ul>
<li>
<div>asdasdasd</div>
</li>
</ul>
</li>
<li>STUFF
<ul>
<li>
<div>asdasdasd</div>
</li>
</ul>
</li>
</ul>
</li>
<li>STUFF
<ul>
<li>STUFF</li>
<li>STUFF</li>
</ul>
</li>
<li>STUFF
<ul>
<li>STUFF</li>
<li>STUFF</li>
</ul>
</li>
<li>STUFF
<ul>
<li>STUFF</li>
<li>STUFF</li>
</ul>
</li>
<li>STUFF
<ul>
<li>STUFF</li>
<li>STUFF</li>
</ul>
</li>
<li>STUFF
<ul>
<li>STUFF</li>
<li>STUFF</li>
</ul>
</li>
<li class="navblue">STUFF
<ul>
<li>STUFF</li>
<li>STUFF</li>
</ul>
</li>
<li class="navorange">STUFF</li>
</ul>​
CSS
body {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 12px;
color: #000000;
}
#nav, #nav ul {
list-style-type: none;
list-style-position: outside;
position: relative;
line-height: 30px;
margin: 0;
padding: 0;
}
#nav li > a {
font-weight: bold;
display: block;
margin-top: -1px;
color: #fff;
text-decoration: none;
background-color: #008000;
padding: 0 10px;
width: 99px;
border-bottom: 1px solid #FFFFFF;
}
#nav li > a:hover {
background-color: #99CC00;
color: #000;
}
#nav li {
float: left;
position: relative;
margin-right: 1px;
}
#nav ul {
position: absolute;
display: none;
width: 12em;
top: 2.5em;
}
#nav li ul a {
width: 160px;
height: auto;
float: left;
line-height: 30px;
font-size: 12px;
font-weight: normal;
}
#nav ul ul {
top: auto;
}
#nav ul ul {
height: 299px;
width: 652px;
margin: 0;
padding: 0;
background-color: #999999;
}
#nav ul ul li {
padding: 20px;
}
#nav li.navblue a {
background-color: #3398CC;
}
#nav li.navorange a {
background-color: #FF9A02;
color: #FEFF00;
}
#nav li ul ul {
left: 14.9em;
margin-left: -2px;
}
#nav li:hover ul ul, #nav li:hover ul ul ul, #nav li:hover ul ul ul ul {
display: none
}
#nav li:hover ul, #nav li li:hover ul, #nav li li li:hover ul, #nav li li li li:hover ul {
display: block
}​
JavaScript/jQuery
window.addEvent('load', function () {
function mainmenu() {
$("#nav ul").css({display:"none"}); // Opera Fix
$("#nav li").hover(function () {
$(this).find('ul:first').css({visibility:"visible", display:"none"}).show(0);
}, function () {
$(this).find('ul:first').css({visibility:"hidden"});
});
}
$(document).ready(function () {
mainmenu();
});
})​
Live Example
replace your current css with this:
<style type='text/css'>
body {font-family:Verdana, Arial, Helvetica, sans-serif;font-size:12px;color:#000000;}
#nav,#nav ul{list-style-type:none;list-style-position:outside;position:relative;line-height:30px;margin:0;padding:0;}
#nav li > a{font-weight:bold;display:block;margin-top:-1px;color:#fff;text-decoration:none;background-color:#008000;padding:0 10px;width:99px;border-bottom:1px solid #FFFFFF;}
#nav li > a:hover{background-color:#99CC00;color:#000;}
#nav li{float:left;margin-right:1px;}
#nav ul{position:absolute;display:none;width:12em;top:2.5em;}
#nav li ul a{width:160px;height:auto;float:left;line-height:30px;font-size:12px;font-weight:normal;}
#nav ul ul{top:0;}
#nav ul ul {height:299px;width:652px;margin:0;padding:0;background-color:#999999;}
#nav ul ul li {padding:20px;}
#nav li.navblue a{background-color:#3398CC;}
#nav li.navorange a{background-color:#FF9A02;color:#FEFF00;}
#nav li ul ul{left:14.9em;margin-left:-2px;}
#nav li:hover ul ul,#nav li:hover ul ul ul,#nav li:hover ul ul ul ul{display:none}
#nav li:hover ul,#nav li li:hover ul,#nav li li li:hover ul,#nav li li li li:hover ul{display:block}
</style>
Changes: remove relative position from #nav li and position #nav ul ul top:0

multilevel vertical unorder list menu

alt text http://www.pwiser.com/error.pnghi i want to make unorder list based menu unable to figure it out i attached the image for better understanding please help below is my css and xhtml
#verticalSubmenu ul
{
margin: 0;
padding: 0;
list-style-type: none;
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
text-transform:uppercase;
}
#verticalSubmenu li { margin: 0 0 3px 0; background:#dedede; border: 1px solid #f7f7f7; color:#666666; height:auto;
}
#verticalSubmenu li.parent { background:#6c6b6b; color:#fcfafa; height:auto;
}
#verticalSubmenu a
{
display: block;
padding: 4px 2px 2px 10px;
width: 138px;
}
#verticalSubmenu li a:link, #navlist a:visited{
color: #666666;
text-decoration: none;
}
#verticalSubmenu li.parent a:link, #navlist a:visited
{
color: #fcfafa;
}
#verticalSubmenu ul ul {
position:relative;
height:0;
top:10px;
left:0;
}
#verticalSubmenu ul ul li{
background:#f9f9f9;
border:1px solid #f9f9f9;
}
#verticalSubmenu ul ul a{
padding: 4px 2px 2px 20px;
height:auto;
}
<div id="verticalSubmenu">
<ul id="navlist">
<li class="parent">Item one</li>
<li>Item two</li>
<li>Item three</li>
<li>Item four</li>
<li>
Item five
<ul>
<li> Item six</li>
<li> Item six</li>
<li> Item six</li>
<li> Item six</li>
</ul>
</li>
<li>Item four</li>
</ul>
</div>
It looks like the above example may be a 3 levels menu - which isn't much harder than the 2 level menu you already have once you get it working.
My suggestion is build the whole thing so you have one massive expanded menu, rather than only putting in the li's and ul's appropriate to whatever section they are currently in, then do something like this:
ul ul {
display: none;
}
ul li.lit ul {
display: block;
}
Then give whatever menu item they happen to be in (on the li) the class of .lit and it will only show that menu as open. It's much easier than generating a custom menu for each and every page.
I think your...
#verticalSubmenu ul ul {
position:relative;
height:0;
top:10px;
left:0;
}
Is the likely culprit. position: relative; will remove it from the page, thus positioning the LI below underneath it. Replace that whole rule with this:
#verticalSubmenu ul ul {
display: block;
}
above question resolved solution posting if any one need menu like this
<div id="verticalSubmenu">
<ul id="navlist">
<li class="parent">Item one</li>
<li>Item two</li>
<li>Item three</li>
<li>Item four</li>
<li>
Item five
<ul>
<li> Third Level</li>
<li> Third Level</li>
</ul>
</li>
<li>Item six</li>
<li>Item seven</li>
<li>Item eight</li>
<li class="parent">Item one</li>
<li class="parent">Item one</li>
<li class="parent">Item one</li>
</ul>
</div>
#verticalSubmenu ul
{
margin: 0;
padding: 0;
list-style-type: none;
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
text-transform:uppercase;
}
#verticalSubmenu li {
float:left;
margin: 0 0 3px 0;
color:#666666;
height:auto;
display:block;
}
#verticalSubmenu li a
{
display: block;
padding: 5px 2px 2px 10px;
width: 138px;
height:16px;
border: 1px solid #f7f7f7;
background:#dedede;
color:#6e6e6e;
text-decoration:none;
}
#verticalSubmenu li.parent a
{
background:#6c6b6b;
color:#fcfafa;
}
#verticalSubmenu ul ul{
margin-top:10px;
position:relative;
}
#verticalSubmenu ul ul li a{
display: block;
padding: 4px 2px 2px 20px;
width: 128px;
background:#f9f9f9;
}
i will make some improvement but basic structure is complete cheers :)

Resources