Lo primero es tener la clase de estilo para implementar la Barra de Herramientas (en este caso utilizamos una larga para preveer crecimientos futuros):
.ejCont2Tools {background: #C6241C;line-height: 22px;padding: 1px;border: 2px groove #F3D4D3;}
A continuación definimos las 2 clases de estilo para ambos estados de los botones:
.ejOff2Ico {background: #FD0D00;padding-top: 1px;padding-bottom: 1px;padding-left: 5px;padding-right: 3px;text-align: center;border: 2px outset #F8CCC9;line-height: 18px;}
.ejOn2Ico {background: #D40C00;padding-top: 1px;padding-bottom: 1px;padding-left: 5px;padding-right: 3px;text-align: center;border: 2px inset #F8CCC9;line-height: 18px;}
La función Javascript para cambiar la clase de estilo de cada contenedor de icono con los eventos onMouseOver, onMouseOut, es igual a la del caso anterior:
function change2Icons(id,classe,m)
{
if (m==0)
{
document.getElementById(id).className='ejOff2Ico';
}
else
{
document.getElementById(id).className=classe;
}
Ahora utilizaremos otra función Javascript para mostrar u ocultar las capas de opciones de 2º nivel de cada icono con el evento onMouseOver: Esta función mostrará la opción de 2º nivel correspondiente a la vez que oculta el resto:
function DisplayHide(id,subcapa,m)
{
if (m==0)
{
document.getElementById(subcapa).style.visibility="hidden";
}
else
{
for(i=1; i < 6; i++)
{
document.getElementById('Layer' + i).style.visibility="hidden";
document.getElementById(subcapa).style.visibility="visible";
}
}
}
Ahora definimos la clase de estilo de los botones de las opciones de 2º nivel:
.sub2Cont {background: #E5E0E0;color: #D40C00;padding: 1px 5px;text-align: center;border: 1px outset #C6241C;font-size: 10px;font-weight:normal;font-size: 10px;font-family: verdana,arial,helvetica,sans-serif;}
A continuación definimos las clases de estilo de cada una de las capas que contienen de los botones de 2º nivel. Podría ser una única clase para todos los grupos, pero utilizamos una por opción de 1º nivel para incluir posicionamiento de las sub-opciones:
.subOptContainer1 {position: relative;top: -5px; left: 5px;visibility: hidden;}
.subOptContainer2 {position: relative;top: -27px; left: 30px;visibility: hidden;}
.subOptContainer3 {position: relative;top: -49px; left: 60px;visibility: hidden;}
.subOptContainer4 {position: relative;top: -71px; left: 85px;visibility: hidden;}
.subOptContainer5 {position: relative;top: -93px; left: 110px;visibility: hidden;}
Y finalmente el código HTML que maqueta los botones con su efecto en celdas de la tabla contenedora es el siguiente:
<td valign="top" id="1" class="ejOff2Ico" onMouseOver="change2Icons(1,'ejOn2Ico',1);DisplayHide(1,'Layer1',1)" onMouseOut="change2Icons(1,'ejOff2Ico',0)"> <img src="images/pagesIcoHome.gif" alt="Página inicial" width="11" height="11" border="0"></td>
Y la definición HTML de las capas que contienen las opciones de 2º nivel es::
<div class="subOptContainer5" id="Layer5">
<span class="sub2Cont" onClick="javascript:void(null)"> Opción-51</span>
<span class="sub2Cont" onClick="javascript:void(null)"> Opción-52</span>
<span class="sub2Cont" onClick="javascript:void(null)"> Opción-53</span>
</div>
|