2016-03-17 3 views
-2

Я просмотрел похожие темы и попробовал несколько решений (z-index, position, пытаясь идентифицировать перекрывающиеся элементы) и не могу понять, почему, когда я пытаюсь щелкнуть элемент подменю, он исчезает. Страница находится ниже:CSS - Подменю исчезает, когда я пытаюсь навести курсор

http://aboutbeingconnected.com/consulting/

Единственная вкладка меню с подменю «Консалтинг».

Любые идеи, в которых проблема?

+0

Пожалуйста, включите ваш код в вопрос, а не ссылки –

+1

Извините. Даже не был уверен, где проблема. Сделаю это в следующий раз. –

+0

Сделайте это _this_ раз. Вы можете отредактировать свой вопрос. Если ответ Гай решит вашу проблему, отметьте его как ответ. – Turnip

ответ

1

Благодаря вашей подменю быть position: absolute с top: 40px это означает, что есть 40px разрыв ниже li. Когда ваша мышь перемещается с li и в 40px вы больше не паря над li, и, следовательно, li:hover не запускается.

Одним из решений является установка top быть 100% от родительского элемента:

.sf-menu li:hover ul { 
    top: 100%; 
} 

Это позволит сократить разрыв между родительским и дочерним меню, но вы можете увидеть, как там сейчас нет зазора между элементами ,

+0

Удивительный! Это отлично поработало. - ** луки ** - –

+1

Не беспокойтесь, вы можете отметить ответ как правильный, чтобы другие могли найти правильный ответ – Guy

-1

Все сводится к 40-процентному промежутку, установленному с помощью .sf-menu li: hover ul. .Sf-menu li.sfHover ul {top: 40px}.

Абсолютное позиционирование вытягивает подменю из потока документа - хотя он все еще находится в HTML как потомок родительского li, он больше не находится в пределах его границ. Поэтому попробуйте мышь от одного к другому, и вы оставили li, отменив его поведение наведения, прежде чем приблизиться к подменю.

Как сохранить тот же внешний вид и получить ожидаемую функциональность вы бы хотели:

  1. Нет больше позиции абсолютной для .SF-меню ул. Храните его в потоке документа.
  2. Приложите фоновое изображение маленькой стрелки вверх к UL. Добавьте лишнюю белую полоску вверху, если вы хотите больше визуального пространства.
  3. Примените фоновое изображение/цвет серого к ли. Нанесите верхнюю и нижнюю прокладку, чтобы получить нужный вам внешний вид. (Маржа также сделает это, если вам это не нужно, чтобы ее можно было щелкнуть).
Смежные вопросы