2016-04-07 2 views
1

Я создал раскрывающееся меню, и теперь я хочу навести курсор на пункты главного меню, но список («выпадающее меню») ниже этого главного меню не будет. Я мог бы дать моим ul и li классу, чтобы решить эту проблему, но есть ли более гладкий или чистый способ?CSS3 - выпадающее меню hover

Я ценю каждый комментарий!

EDIT - CSS код:

#mainnav li ul:not:hover { 
    none !important; 
} 

#mainnav ul li a:hover { 
    background-color: #ff4040; 
} 

Так парения делает работу, конечно, но его включают все ul и li

+1

Покажите нам свой html и соответствующий css, который вы использовали. Лучше всего, если бы вы могли создать рабочую демоверсию, чтобы мы могли увидеть ее в действии. В качестве общего правила, хотя в этих случаях удобно использовать ['>' child selector] (https://developer.mozilla.org/en-US/docs/Web/CSS/Child_selectors). –

+0

Спасибо за комментарий. Я буду искать «дочерний селектор» – thissven

+0

Я также отправил ответ после просмотра вашего кода. –

ответ

1

Вы должны использовать > child selector

#mainnav li ul{ 
    display:none; 
} 
#mainnav li:hover > ul{ 
    display:block; 
} 
#mainnav ul li a:hover { 
    background-color: #ff4040; 
} 

Таким образом, вы установите ul будет скрыто по умолчанию (первое правило), и когда вы наведите курсор на li, то покажет только его ul ребенок (и не глубже).

Смежные вопросы