Pues adaptando un menú desplegable que se muetra al presionar click, pues bien, el menú funciona bien a excepción de un detalle, al desplegarse mueve todo lo que esté debajo de ella hacia abajo, o sea, el menú que se muestra no se coloca por encima sino que arrastra todo hacia abajo, como ejemplo coloco el menú del foro, al pasarle el mouse se despliega los sub-menues pero no mueve el foro hacia abajo sino que se coloca encima, y ese es el efecto que deseo lograr, colocaré los códigos y subiré el archivo .js:
Estilo
.button{
background:url(img/button.png) -32px right no-repeat;
color:#FFFFFF;
clear:both;
display:block;
float:left;
font-size:13px;
font-weight:bold;
height:31px;
line-height:31px;
width:auto;
margin-right:30px;
}
a.button {
text-decoration:none;
}
.button span {
background:url(img/button.png) left top no-repeat;
display:block;
height:31px;
line-height:31px;
padding-left:10px;
padding-right:8px;
margin-right:20px;
}
/* -------------------------------------------------------- */
/* MENU */
.v-menu{
border:solid 1px #7F9FBF;
width:200px;
clear:both;
}
ul.v-menu, .v-menu li{
padding:0;
margin:0;
list-style:none;
}
ul.v-menu{
clear:both;
margin-top:6px;
padding:6px 10px;
}
.v-menu li a{
color:#555555;
font-weight:bold;
display:block;
border-top:solid 1px #DEDEDE;
padding:4px;
text-decoration:none;
}
.v-menu li a:hover{
color:#999999;
}
script que se coloca en el html:
<script type="text/javascript"> function showElement(layer){
var myLayer = document.getElementById(layer);
if(myLayer.style.display=="none"){
myLayer.style.display="block";
myLayer.backgroundPosition="top";
} else {
myLayer.style.display="none";
}
}
Aquí es como llamamos el menú:
<a href="#" class="button" onclick="javascript:showElement('v-menu')"><span>Click Here
</span></a> <ul id="v-menu" class="v-menu" style="display:none;"> <li><a href="p1.html">Technology
</a></li> <li><a href="p2.html">Design
</a></li> <li><a href="p3.html">Css Gallery
</a></li> <li><a href="p4.html">Entertainment
</a></li> <li><a href="p5.html">Programming
</a></li>
Y más abajo anexo el archivo .js, espero me puedan echar una manito.
Saludos.