меню li a: active, как я могу заставить его работать должным образом?

0

Я занимаюсь навигационной панелью, и мне бы хотелось, чтобы пользователь нажал на "showreel" два других раздела. Как я могу это сделать с помощью CSS?

здесь мой код:

<li><a href="showreel.html">showreel</a>
    <ul>
     <li><a href="showreel.html">director</a></li>
    <li><a href="showreel.html">cinematographer</a></li>
    </ul>
  • 1
    когда вы говорите «пресс», вы имеете в виду щелчок мышью? а может мышь при наведении? Обратите внимание, что если пользователь щелкает ссылку (которая, как вам кажется, является элементом «showreel»), страница будет перенаправлена.
  • 0
    что вы подразумеваете под "прессой"? это "зависание" или "щелчок"?
Теги:

4 ответа

0
Лучший ответ

Как упоминают другие, вы, вероятно, захотите использовать :hover для меню наведения. Обратите внимание, что обычные меню наведения недоступны с использованием только клавиатур, и для их работы на клавиатурах необходимо использовать дополнительные усилия. Для этого вам нужно подключиться к событиям фокуса:

демонстрация

CSS

ul li:hover ul,

ul li.forceShow ul
{
    display:block;
}

ul ul {
    display:none;
}

JS

$('ul a').focusin(function () {
    $(this).parent().toggleClass('forceShow');
});
0

Эта ссылка поможет вам. Откройте его в своем браузере, щелкните правой кнопкой мыши и проверьте элемент, вы найдете код.

  • 0
    большое спасибо!
0

Хорошо, с новой разметкой, которую вы предоставили, я не думаю, что вы можете добиться того, чего хотите, просто с помощью CSS. Причина в том, что ваш

<a href="showreel.html">showreel</a>

тег, который получает: активный псевдокласс, но он не содержит двух других ссылок. Поэтому две ссылки не могут быть затронуты ссылкой showreel, а не только CSS.

Если вы хотите использовать Javascript, решение довольно простое.

  • 0
    Я думаю, JS будет решением! Спасибо за объяснение!
0

Это поможет много, если вы сможете показать свою разметку.

Кроме того, для такого поведения лучше использовать JavaScript вместо CSS. Вы не должны использовать CSS для изменения стиля элемента в зависимости от другого внешнего элемента.

Если режиссер и кинематографист находятся в одном и том же элементе, то, возможно, такой вложенный селектор (я предполагаю, что ваш showreel является якорем, а другой - пролетом)

a:active > span {
   display: inline;
}

Но в очередной раз это не лучшая практика, и вы должны изучить решения Javascript.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню