Ecco il codice che uso:
codice:
<div class="menu">
<ul>[*]
<div>
<ul>[*] .... [/list]
</div>
[/list]
</div>
/* remove all list stylings */
.menu ul, .menu ul ul {
margin: 0;
padding: 0 3px 0 0;
border: 0;
list-style-type: none;
display: block;
}
/* move all list items into one row, by floating them */
.menu ul li {
margin: 0;
padding: 0;
border: 0;
display: block;
float: right;
}
/* define new starting point for the nested UL, thus making positioning it a piece of cake */
.menu ul li:hover {
position: relative;
}
.menu li li
{
width: 98%;
padding:1px 0;
margin:0;
text-align:left;
display:block;
}
/*QUI DEVO SETTARE LE NUOVE COORDINATE*/
.menu ul li div{
top: 0;
right: 0;
}
/* initialy hide all sub menus */
.menu ul li div {
visibility: hidden;
position: absolute;
z-index: 10;
}
/* display them on hover */
.menu li:hover>div {
visibility: visible;
}
/* -- float.clear -- force containment of floated LIs inside of UL */
.menu ul:after, .menu ul ul:after, menu ul li:after, .menu li li:after {
content: ".";
height: 0;
display: block;
visibility: hidden;
overflow: hidden;
clear: both;
}
.menu div {
background-image: url(empty.gif);
padding: 10px 0px 10px 10px;
margin: 10px 0px 0 0;
}
.menu ul ul
{
padding: 0;
border:1px solid Silver;
background-color: #FFFFFF;
overflow:hidden !important; /*To hide the overflowing divisor line*/
z-index: 20;
}
.menu ul li a, .menu ul li a:hover
{
margin-left:4px;
display:inline;
}
.menu ul ul a, .menu ul ul a:hover {
text-decoration: none;
margin:0;
display:block;
}
Come ho già detto il menu drop down funziona bene e viene posizionato bene rispetto al[*] padre.
Il problema sorge in FF quando il menu si trova in prossimità del bordo inferiore del container, in quanto pur settanto z-index, il submenu non si sovrappone al container padre.
per tale motivo pensavo di ricorrere a JavaScript per posizinare in modo assoluto il submenu. Spero sia un pò più chiaro ora il quadro.
Grazie