2013-09-28 2 views
3

У меня есть блог http://fraldasdamaria.blogspot.pt/, и я хотел бы поместить подменю, находящиеся в режиме опрокидывания. Я могу поместить sububmenu правильно; но когда я положил условие переполнение: скрытый в подменю, subsubmenu disapear. Кто-нибудь может мне помочь?CSS Dropdown Проблемы с переполнением меню

код CSS является:

`#menuWrapper { 
width:100%; /* Ancho del menú */ 
height:35px; /* Altura da barra principal */ 
padding-left:15px; 
background:#1F151E; /* Color de fondo */ 
border-radius:20px; /* Bordes redondeados de la barra principal */ 
} 
.menu { 
padding:0; 
margin:0; 
list-style:none; 
height:35px; 
position:relative; 
z-index:5; 
font-family:"Lucida Sans Unicode", "Trebuchet Unicode MS", "Lucida Grande",sans-serif; 
} 
.menu li a:hover{background:#2580a2; color:#fff; /* Cor do Separador principal ao passar cursor */ 
transition: background 0.5s linear 0s; 
} 
.menu li.top {display:block; float:left;} 
.menu li a.top_link { 
display:block; 
float:left; 
height:35px; 
line-height:34px; 
color:#FFFFFF; 
text-decoration:none; 
font-family:"Lucida Sans Unicode", "Trebuchet Unicode MS", "Lucida Grande",sans-serif; 
font-size:13px; /* Tamaño de la fuente */ 
font-weight:none; 
padding:0 0 0 12px; 
cursor:pointer; 
} 
.menu li a.top_link span { 
float:left; 
display:block; 
padding:0 24px 0 12px; 
height:35px; 
} 
.menu li a.top_link span.down { 
float:left; 
display:block; 
padding:0 24px 0 12px; 
height:35px; 
} 
.menu li a.top_link:hover, .menu li:hover > a.top_link {color:#fff; } 
.menu li:hover {position:relative; z-index:2;} 
.menu ul, 
.menu li:hover ul ul, 
.menu li:hover ul li:hover ul ul, 
.menu li:hover ul li:hover ul li:hover ul ul, 
.menu li:hover ul li:hover ul li:hover ul li:hover ul ul 
{position:absolute; left:-9999px; top:-9999px; width:0; height:0; margin:0; padding:10px 5px 10px 10px; list-style:none;} 
.menu li:hover ul.sub { 
left:0; 
top:35px; 
background:#1F151E; /* Color de fondo del submenú */ 
padding:3px; 
white-space:nowrap; 
width:200px; /* Largura do submenu */ 
height:auto; 
max-height:900px; 
z-index:100; 
font-size:12px; /* Tamanho fonte submenu */ 
border-radius: 0px 0px 20px 20px; /* Bordes redondeados del submenú */ 
transition-property: max-height; 
transition: max-height 2s ease; 

} 
.menu li:hover ul.sub li { 
display:block; 
height:36px; /* Altura de cada linha do submenu */ 
position:relative; 
float:left; 
width:200px; 
font-weight:9px; 
} 
.menu li:hover ul.sub li a{ 
display:block; 
line-height:30px; 
text-indent:5px; 
color:#FFFFFF; 
text-decoration:none; 
padding:4px 0px 4px 8px; /* Margem interna de cada linha do submenu */ 
border-radius: 0px 0px 20px 20px; /* Bordes redondeados del submenú */ 
} 
.menu li ul.sub li a.fly { 
/* Color de fondo del submenú */ 
background:#1F151E url(https://lh4.googleusercontent.com/_dsEG33PDaHw/TZ0rcSPpqlI/AAAAAAAABSc/RseHiYluzAM/arrow_over.gif) 185px 10px no-repeat;} 
.menu li:hover, .menu li:hover ul.sub li a:hover { 
background:#2580a2; /* Color de fondo al pasar el cursor */ 
transition: background 0.5s linear 0s; 
color:#FFFFFF; 
border-radius: 0px 0px 20px 20px; 
text-shadow: 3px 3px #1F151E; 
} 
.menu li:hover ul.sub li a.fly:hover, .menu li:hover ul li:hover > a.fly { 
/* Color de fondo al pasar el cursor */ 
background:#2580a2 url(https://lh4.googleusercontent.com/_dsEG33PDaHw/TZ0rcSPpqlI/AAAAAAAABSc/RseHiYluzAM/arrow_over.gif) 185px 10px no-repeat; color:#fff;} 
.menu li:hover ul li:hover ul, 
.menu li:hover ul li:hover ul li:hover ul, 
.menu li:hover ul li:hover ul li:hover ul li:hover ul, 
.menu li:hover ul li:hover ul li:hover ul li:hover ul li:hover ul { 
left:200px; 
top:0px; 
background: #1F151E; /* Color de fondo del submenú */ 
padding:3px; 
white-space:nowrap; 
width:200px; /* Largura do subsubmenu */ 
z-index:4; 
height:auto; 
max-height:900px; 
overflow:hidden; 
border-radius: 0px 0px 20px 20px; /* Bordes redondeados del subsubmenú */ 
transition-property: max-height; 
transition: max-height 2s ease; 
} 

ответ

0

Это потому, что ваш подменит (#crosscol ul) имеет width:200px определенные при mousehovered и если применить overflow:hidden - все остальное из этого 200px должно быть скрыто.

Я также вижу, что вы используете очень старый метод выпадающих меню, используя левый: -9999px, просто дисплей: block/none может использоваться для любого уровня вложенных выпадающих списков.

EDIT Вот пример раскрывающегося списка с использованием дисплея: block/none и довольно прост.

http://jsfiddle.net/shekhardesigner/KhFzh/