Menu Desplegable Horizontal CSS

Hola:

Recurro a vosotros despues de haber dado mil vueltas por el google, y nada sera que quiero algo muy raro..

En lugar de enrollarme os dejo un dibujo que explica cual es el tipo de menu que busco.


He visto alguno pero con js, que luego me dan guerra., por eso prefiero que sea en CSS

Muchas gracias
ósea tu quieres un menú desplegable el cual en cada sup sección el menú se encoja y se desplace hacia abajo, esto es algo fácil de hacer entre comillas si conoces esta siguiente técnica.

en el html devez tener algo asi
<div id='menu'>
<div id='cat'>
	<ul class='sf-menu'>
		<li>
      <a href='#' title='#'>sin sub categoria</a>
		</li>
		<li>
			<a href='#' title='#'>con sub categoria</a>
			<ul class='children'>
				<li>
					<a href='#' title='#'>sin sub-sub categoria</a>
				</li>
				<li>
					<a href='#' title='#'>con sub-sub categoria</a>
			    <ul>
		  		  <li>
	  				  <a href='#' title='#'>categoria final</a>
  				  </li>
			    </ul>
				</li>
			</ul>
		</li>
	</ul>
</div>
</div>

y en el css algo asi (al final explico como editarlo relax xD)
#menu           { float:			left ; margin-bottom:0px ; width:1000px ; line-height:	1.0 ; height:30px ; background:#060d18 }
#menu p         { color: #668790}
#menu li        { border-right:	1px solid #122B41 ; float:left ; list-style:none ; background:		#060D18 ;  padding: 0px  0px }
#menu a         { color: #6CA7C7 ; text-decoration:none ;  padding: 8px  15px }
#menu a:link    { }
#menu a:visited { }
#menu a:hover   { color:#d9dfe0 ; background: url(objetos/menu.png) repeat-x }
#menu a:active  { }
.sf-menu ul {
	position:		absolute;
	top:			-999em;
	width:			10em; /* left offset of submenus need to match (see below) */
}
.sf-menu ul li {
	width:			100%;
}
.sf-menu li:hover {
	visibility:		inherit; /* fixes IE7 'sticky bug' */
}
.sf-menu li {
	float:			left;
	position:		relative;
}
.sf-menu a {
	display:		block;
	position:		relative;
}
.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
	left:			0;
	top:			30px; /* match top ul list item height */
	z-index:		150;
}
ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul {
	top:			-999em;
}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
	left:			5em; /* match ul width */
	top:			0;
}
ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul {
	top:			-999em;
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
	left:			5em; /* match ul width */
	top:			0;
}

Muy bien una vez escrito esto empiezo a explicar cada detalle de como editarlo
el html no es nada del otro mundo solo es un menú normal con sub secciones en el cual para cada nuevo nivel solo se debe colocar un ul entre un par de li

ahora el css se que se ve sumamente complicado pero no lo es solo es repetitivo.
Empezaremos con estas línea
#menu { float: left ; margin-bottom:0px ; width:1000px ; line-height: 1.0 ; height:30px ; background:#060d18 }
#menu p { color: #668790}
#menu li { border-right: 1px solid #122B41 ; float:left ; list-style:none ; background: #060D18 ; padding: 0px 0px }
#menu a { color: #6CA7C7 ; text-decoration:none ; padding: 8px 15px }
#menu a:link { }
#menu a:visited { }
#menu a:hover { color:#d9dfe0 ; background: url(objetos/menu.png) repeat-x }
#menu a:active { }
si te fijas no son mas que diseños para la capa menú y lo que aparece en ellas como por ejemplo márgenes fondos etc, esta parte la obvio ya que repetiría lo que sale en el curso paso a paso. (si quieres lo explico)
Ahora lo demás como dije es repetitivo, a lo que me refiero es que repite los nombre de li y ul para indicar que pasa cuando un ul esta dentro de un li y cuando un ul esta dentro de un li y ese li esta dentro de otro li mas, ahora expliquemos esta parte es el ul sin ningún li ósea la primera sección sin desplegable, de verdad sugiero no editar esta parte la razón es que no veremos cambios relevantes en el diseño.
.sf-menu ul {
position: absolute;
top: -999em;
width: 10em;
}
.sf-menu ul li {
width: 100%;
}
.sf-menu li:hover {
visibility: inherit; /* fixes IE7 'sticky bug' */
}
.sf-menu li {
float: left;
position: relative;



Lo siguiente es el primer desplegable



.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
left: 0;
top: 30px; /* match top ul list item height */
z-index: 150;
}
ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul {
left: 0;
top: -999em;
}
como notamos es mas corto pero para editarlo no es mas que cambiar 2 factores el cual es el left y el top, si queremos que salga a la derecha solo debemos borrar lo que sale en el ltop y poner una cantidad en el left, esto ara que cada menú se alinie uno al lado del otro.

Ahora lo demás si nos fijamos es lo mismo que lo que tenemos aquí solo que se le agrega esto al nombre
.sf-menu li li:hover ul, lo que indica que es el diseño para un li dentro de otro li y después un ul y el siguiente es para una cuarta sección donde seria un li dentro de otro li y ese dentro de otro.
.sf-menu li li li:hover ul,
Esto es todo por los momentos cualquier otra duda o aclaración solo pregunta.
Lo primero es darte las gracias, te lo has currado¡¡¡¡

Pero se ve que me explique mal, subo una nueva imagen que lo explico mejor,

Las subcategorias, y subcategorias se deberian desplazar en la horizontal, vamos caer un nivel y alli se abren en la horizontal. No pense que me iba a dar tantos problemas.
Hola:

he dado con este menu, que se parece bastante a lo que busco, salvo que habriua qua añadirle un submenu, dentro del submenu
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml2/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>CSS Menu Maker</title>

<link rel="stylesheet" media="all" type="text/css" href="menu_style.css" />
<!--[if IE]>
<link rel="stylesheet" media="all" type="text/css" href="ie.css" />
<![endif]-->

</head>

<body>
<div class="nav">
<div class="table">

<ul class="select"><li><a href="#"><b>Sample</b></a></li></ul>

<ul class="select"><li><a href="#"><b>Sample Menu</b></a>
<div class="select_sub">
	<ul class="sub">
		<li><a href="#">Sample Menu</a></li>
		<li><a href="#">Sample Menu</a></li>
		<li><a href="#">Sample Menu</a></li>
		<li><a href="#">Sample Menu</a></li>
		<li><a href="#">Sample Menu</a></li>
	</ul>
</div>
</li>
</ul>

<ul class="select"><li><a href="#"><b>Sample Menu</b></a>
<div class="select_sub">
	<ul class="sub">
		<li><a href="#">Sample Menu 2</a></li>
		<li><a href="#">Sample Menu 2</a></li>
		<li><a href="#">Sample Menu 2</a></li>
		<li><a href="#">Sample Menu 2</a></li>
		<li><a href="#">Sample Menu 2</a></li>
	</ul>
</div>
</li>
</ul>


<ul class="select"><li><a href="#"><b>Sample Menu</b></a>
<div class="select_sub">
	<ul class="sub">
		<li><a href="#">Sample Menu 3</a></li>
		<li><a href="#">Sample Menu 3</a></li>
		<li><a href="#">Sample Menu 3</a></li>
		<li><a href="#">Sample Menu 3</a></li>
		<li><a href="#">Sample Menu 3</a></li>
	</ul>
</div>
</li>
</ul>


<ul class="select"><li><a href="#"><b>Sample Menu</b></a>
<div class="select_sub">
	<ul class="sub">
		<li><a href="#">Sample Menu 4</a></li>
		<li><a href="#">Sample Menu 4</a></li>
		<li><a href="#">Sample Menu 4</a></li>
		<li><a href="#">Sample Menu 4</a></li>
		<li><a href="#">Sample Menu 4</a></li>
	</ul>
</div>
</li>
</ul>

</div>
</div>

<br />
</body>
</html>

el css
.nav {
height:35px; 
background: url(images/bg.gif) repeat-x; 
position:relative; 
font-family:arial, verdana, sans-serif; 
font-size:11px; 
width:100%; 
z-index:100;
margin:0;
padding:0;
}

.nav .table {
display:table; 
margin:0 auto;
}

.nav .select,
.nav .current {
margin:0; 
padding:0; 
list-style:none; 
display:table-cell; 
white-space:nowrap;
}

.nav li {
margin:0; 
padding:0; 
height:auto; 
float:left;
}

.nav .select a {
display:block; 
height:35px; 
float:left; 
font-weight:bold;
background: url(images/bg.gif); 
padding:0 30px 0 30px; 
text-decoration:none; 
line-height:35px; 
white-space:nowrap; 
color:#2b3238;
}


.nav .select a:hover, 
.nav .select li:hover a {
background: url(images/hover.gif); 
padding:0 0 0 15px; 
cursor:pointer; 
color:#2b3238;
}

.nav .select a b{
	font-weight:bold;
	}

.nav .select a:hover b, 
.nav .select li:hover a b {
display:block; 
float:left; 
padding:0 30px 0 15px; 
background:url(images/hover.gif) right top; 
cursor:pointer;
}

.nav .select_sub {
display:none;
}

/* IE6 only */
.nav table {
border-collapse:collapse; 
margin:-1px; 
font-size:1em; 
width:0; 
height:0;
}

.nav .sub {
display:table; 
margin:0 auto; 
padding:0; 
list-style:none;
}

.nav .sub_active .current_sub a, 
.nav .sub_active a:hover {
background:transparent; 
color:#2b3238;
}

.nav .select :hover .select_sub, 
.nav .current .show {
display:block; 
position:absolute; 
width:100%; 
top:35px; 
background:url(images/back.gif); 
padding:0; 
z-index:100; 
left:0; 
text-align:center;
}

.nav .current .show {
z-index:10;
}

.nav .select :hover .sub li a, 
.nav .current .show .sub li a {
display:block; 
float:left; 
background:transparent; 
padding:0 10px 0 10px; 
margin:0; 
white-space:nowrap; 
border:0; 
color:#2b3238;
}

.nav .current .sub li.sub_show a {
color:#2b3238; 
cursor:default; 
}

.nav .select .sub li a {
	font-weight:normal;
}

.nav .select :hover .sub li a:hover, 
.nav .current .sub li a:hover {
visibility:visible; 
color:#73a0d2; 
}


Intento mostrar como deberia quedar el codigo:

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml2/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>CSS Menu Maker</title>

<link rel="stylesheet" media="all" type="text/css" href="menu_style.css" />
<!--[if IE]>
<link rel="stylesheet" media="all" type="text/css" href="ie.css" />
<![endif]-->

</head>

<body>
<div class="nav">
<div class="table">

<ul class="select"><li><a href="#"><b>Sample</b></a></li></ul>

<ul class="select"><li><a href="#"><b>Sample Menu</b></a>
<div class="select_sub">
	<ul class="sub">
		<li>
        
        
      [color=#FF0000]  <ul class="subsub">
        <li><a href="#">SampleSUB Menu</a></li>
        <li><a href="#">Sample SUBMenu</a></li>
        
        </ul>[/color]</li>
		<li><a href="#">Sample Menu</a></li>
		<li><a href="#">Sample Menu</a></li>
		<li><a href="#">Sample Menu</a></li>
		<li><a href="#">Sample Menu</a></li>
	</ul>
</div>
</li>
</ul>

<ul class="select"><li><a href="#"><b>Sample Menu</b></a>
<div class="select_sub">
	<ul class="sub">
		<li><a href="#">Sample Menu 2</a></li>
		<li><a href="#">Sample Menu 2</a></li>
		<li><a href="#">Sample Menu 2</a></li>
		<li><a href="#">Sample Menu 2</a></li>
		<li><a href="#">Sample Menu 2</a></li>
	</ul>
</div>
</li>
</ul>


<ul class="select"><li><a href="#"><b>Sample Menu</b></a>
<div class="select_sub">
	<ul class="sub">
		<li><a href="#">Sample Menu 3</a></li>
		<li><a href="#">Sample Menu 3</a></li>
		<li><a href="#">Sample Menu 3</a></li>
		<li><a href="#">Sample Menu 3</a></li>
		<li><a href="#">Sample Menu 3</a></li>
	</ul>
</div>
</li>
</ul>


<ul class="select"><li><a href="#"><b>Sample Menu</b></a>
<div class="select_sub">
	<ul class="sub">
		<li><a href="#">Sample Menu 4</a></li>
		<li><a href="#">Sample Menu 4</a></li>
		<li><a href="#">Sample Menu 4</a></li>
		<li><a href="#">Sample Menu 4</a></li>
		<li><a href="#">Sample Menu 4</a></li>
	</ul>
</div>
</li>
</ul>

</div>
</div>

<br />
</body>
</html>

Pero he tratado cambiar el css pero no me dan la nuerona