MENÚES DESPLEGABLES
Mediante jquery podemos crear un menú desplegable horizontal personalizado. Los estilos de menu10 corresponden a los items no desplegables y menu20-40 a desplegables con distinto número de subitems.
El script es simple en mouseover o mouseout de la div superior (#m) toda la div submenu cambia de display block a none y viceversa. Así no se empulja el resto de las div hacia abajo. tienen z-index:1000 para estar siempre arriba del resto de la página tambien position:absolute y display:none; de arranque para estar invisibles al cargar la página.
.offset().left); ajusta el submenú al menu por izquierda y la linea siguiente por altura.
Este código no está optimizado para html responsive. Hay que cambiar los CSS.
						
</head>
<style type="text/css">
/* menu no desplegable*/
.menu10{
	background-color:#2B6891;
	text-align:left;
	color:#DDFFFF;
	width:120px;
	height:25px;
	float:left;
	padding-top:10px;
}
.menu10 a{
	color:#DDFFFF;
}
.menu10 a:hover{
	text-decoration:underline;
}
/* menues desplegables*/
.menu20{
	background-color:#2B6891;	
	text-align:left;
	color:#DDFFFF;
	width:125px;
	height:25px;
	float:left;
	padding-top:10px;
}
.submenu20{
	color:#DDFFFF;
	background-color:#2B6891;
	text-align: left;
	display:none;
	position:absolute;
	width:135px;
	z-index:1000;
}
.menu20 a{
	color:#DDFFFF;
}
#m20 a{
	margin-left:15px;
}
#m20 div{
	margin-bottom:3px;
}
.menu30{
	background-color:#2B6891;	
	text-align:left;
	color:#DDFFFF;
	width:145px;
	height:25px;
	float:left;
	padding-top:10px;
}
.submenu30{
	color:#DDFFFF;
	background-color:#2B6891;
	text-align: left;
	display:none;
	position:absolute;
	width:135px;
	z-index:1000;
}
.menu30 a{
	color:#DDFFFF;
}
#m30 a{
	margin-left:15px;
}
#m30 div{
	margin-bottom:3px;
}
.menu40{
	background-color:#2B6891;	
	text-align:left;
	color:#DDFFFF;
	width:128px;
	height:25px;
	float:left;
	padding-top:10px;
}
.submenu40{
	color:#DDFFFF;
	background-color:#2B6891;
	text-align: left;
	display:none;
	position:absolute;
	width:128px;
	z-index:1000;
}
.menu40 a{
	color:#DDFFFF;
}
#m40 a{
	margin-left:15px;
}
#m40 div{
	margin-bottom:3px;
}
</style>
<script src="../scripts/jquery-3.6.4.min.js"></script>
<script type="text/javascript">
	$(document).ready(function(){
		$("#m20").mouseover(function(evento){
			$(".submenu20").css("display","block");
			$(".submenu20").css("left",$("#m20").offset().left);
			$(".submenu20").css("top",$("#m20").offset().top + $("#m20").outerHeight());
		});
		$("#m20").mouseout(function(evento){
			$(".submenu20").css("display","none");
		});	
		$("#m30").mouseover(function(evento){
			$(".submenu30").css("display","block");
			$(".submenu30").css("left",$("#m30").offset().left);
			$(".submenu30").css("top",$("#m30").offset().top + $("#m30").outerHeight());
		});
		$("#m30").mouseout(function(evento){
			$(".submenu30").css("display","none");
		});
		$("#m40").mouseover(function(evento){
			$(".submenu40").css("display","block");
			$(".submenu40").css("left",$("#m40").offset().left);
			$(".submenu40").css("top",$("#m40").offset().top + $("#m40").outerHeight());
		});
		$("#m40").mouseout(function(evento){
			$(".submenu40").css("display","none");
		});
	});
</script>
</head>
<body>
	<div style="margin: 0 auto; width:700px; text-align:left">
		<!-- --------------- menu 1--------------------  -->
        <div class="menu10">
            <span style="margin-left:30px;"><a href="#">MENÚ 1</a></span>
		</div>
        <!-- --------------- menu 2--------------------  -->
        <div id="m20" class="menu20"><a style="text-decoration:none;" href="#" >MENÚ 2</a>
        	<div class="submenu20">
                <div ><a href="#">Submenú 2.1</a></div>
        		<div ><a href="#">Submenú 2.2</a></div>
        		<div ><a href="#">Submenú 2.3</a></div>
        		<div ><a href="#">Submenú 2.4</a></div>
      		</div>
        </div>
		<!-- --------------- menu 3--------------------  -->
        <div id="m30" class="menu30"><a style="text-decoration:none;" href="#" >MENÚ 3</a>
        	<div class="submenu30">
                <div ><a href="#">Submenú 3.1</a></div>
        		<div ><a href="#">Submenú 3.2</a></div>
        		<div ><a href="#">Submenú 3.3</a></div>
                <div ><a href="#">Submenú 3.4</a></div>
                <div ><a href="#">Submenú 3.5</a></div>
                <div ><a href="#">Submenú 3.6</a></div>
       			<div ><a href="#">Submenú 3.7</a></div>
      		</div>
        </div>
        <!-- -------------- menu 4--------------------  -->
		<div id="m40" class="menu40"><a style="text-decoration:none;" href="#" >MENÚ 4</a>
            <div class="submenu40">
        		<div ><a href="#">Submenú 4.1</a></div>
        		<div ><a href="#">Submenú 4.2</a></div>
        		<div ><a href="#">Submenú 4.3</a></div>
        		<div ><a href="#">Submenú 4.4</a></div>
        		<div ><a href="#">Submenú 4.5</a></div>
        		<div ><a href="#">Submenú 4.6</a></div>
        		<div ><a href="#">Submenú 4.7</a></div>
        		<div ><a href="#">Submenú 4.8</a></div>
        		<div ><a href="#">Submenú 4.9</a></div>
        		<div ><a href="#">Submenú 4.10</a></div>
        	</div>
         </div>
		<div style=" width:498px; height:300px; background-color:#CCC; padding:10px; padding-top:30px;">
  			<p>
				Contenido de la página
			</p>
		</div>
	</div>
<body>	
							
					
© IQSystems 2023