Great Points! I like your reverse approach to developing those.
That being said I am one of those who is cautious with using dropdown menus. I have witnessed too many users struggling with the mouse motions on some of the complicated drod-down-move-right menus i see out there. I prefer to use separate menus for major and minor links really. Stuffing every site link into one massive menu can be more trouble than its worth. More importantly these kinds of menus can cause some user frustration, a fact that can come as a surprise to many site designers...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <base href="[(site_url)]" /> <meta name="generator" content="Dreamweaver 8" /> <meta http-equiv=”Content-Type” content=”text/html; charset=[(modx_charset)]” /> <title>[*pagetitle*] - [(site_name)]</title> <link href="assets/templates/bcl/bcl.css" rel="stylesheet" type="text/css" /> <link rel="shortcut icon" href="http://www.bottlecaplure.com/favicon.ico" /> </head> <body> <div id="frame"> <div id="contentheader"><img src="http://www.bottlecaplure.com/images/bclheader3.gif" alt="The Original Bottle Cap Lure Company"></div> <div>[[Wayfinder? &startId=`0` &level=`3` &parentClass=`hide` &parentRowTpl=`cssplay_parentRow` &outerTpl=`cssplay_outer` &innerTpl=`cssplay_inner` &rowTpl=`cssplay_row` &outerClass=`menu` &cssTpl=`cssplay_basicdd`]]</div>
/* common styling */
/* set up the overall width of the menu div, the font and the margins */
.menu {
font-family: arial, sans-serif;
width:750px;
margin:0;
margin:20px 0 60px 0;
position:relative;
z-index:100;
}
/* remove the bullets and set the margin and padding to zero for the unordered list */
.menu ul {
padding:0;
margin:0;
list-style-type: none;
}
/* float the list so that the items are in a line and their position relative so that the drop down list will appear in the right place underneath each list item */
.menu ul li {
float:left;
position:relative;
}
/* style the links to be 104px wide by 30px high with a top and right border 1px solid white. Set the background color and the font size. */
.menu ul li a, .menu ul li a:visited {
display:block;
text-align:center;
text-decoration:none;
width:106px;
height:30px;
color:#000;
border:1px solid #fff;
border-width:1px 1px 0 0;
background:#c9c9a7;
line-height:30px;
font-size:11px;
}
/* make the dropdown ul invisible */
.menu ul li ul {
display: none;
}
/* specific to non IE browsers */
/* set the background and foreground color of the main menu li on hover */
.menu ul li:hover a {
color:#fff;
background:#b3ab79;
}
/* make the sub menu ul visible and position it beneath the main menu list item */
.menu ul li:hover ul {
display:block;
position:absolute;
top:31px;
left:0;
width:105px;
}
/* style the background and foreground color of the submenu links */
.menu ul li:hover ul li a {
display:block;
background:#faeec7;
color:#000;
}
/* style the background and forground colors of the links on hover */
.menu ul li:hover ul li a:hover {
background:#dfc184;
color:#000;
}<link rel="stylesheet" media="all" type="text/css" href="assets/snippets/wayfinder/examples/cssplay/basic_dd.css" /> <!--[if lte IE 6]> <link rel="stylesheet" media="all" type="text/css" href="assets/snippets/wayfinder/examples/cssplay/basic_dd_ie.css" /> <![endif]-->
<ul>
[+wf.wrapper+]
</ul><div[+wf.classes+]>
<ul>
[+wf.wrapper+]
</ul>
</div><li><a [+wf.classes+] href="[+wf.link+]" title="[+wf.title+]">[+wf.linktext+]</a>
<!--[if lte IE 6]>
<a class="sub" href="[+wf.link+]" title="[+wf.title+]">[+wf.linktext+]
<table><tr><td>
<![endif]-->
[+wf.wrapper+]
<!--[if lte IE 6]>
</td></tr></table>
</a>
<![endif]-->
</li><li[+wf.classes+]><a href="[+wf.link+]" title="[+wf.title+]">[+wf.linktext+]</a>[+wf.wrapper+]</li>
<link rel="stylesheet" media="all" type="text/css" href="assets/snippets/wayfinder/examples/cssplay/basic_dd.css" /> <!--[if lte IE 6]> <link rel="stylesheet" media="all" type="text/css" href="assets/snippets/wayfinder/examples/cssplay/basic_dd_ie.css" /> <![endif]-->