li.top ul.submenu{display:none;}
li.top:hover ul.submenu {display:block;}
Первое правило прячет список-подменю.
Второе - показывает подменю, если на верхний пункт меню (родитель), в котором находится подменю, наведут курсор.
Общий принцип - родительский элемент реагирует на наведение мыши и изменяет свойства элементов-потомков.
Мы задаем для элемента li.top ul.submenu
(контекстный селектор), тогда почему правило применяется к родителю (в примере 2
), а тот изменяет свойство элементов-потомков, чтобы подменю появилось, если даже само свойство не наследуется.
То, что на подменю не навести курсор это понятно - оно скрыто.
Интересен принцип работы (есть ли какое то правило).
Почему свойство применяется к родителю во втором примере?
li.top:hover ul.submenu {display:block;}
Надо что-то такое, чтобы только один потомок реагировал:
li.top:hover > ul.submenu {display:block;}
потому что свойство наследуется потомками => ты навел на родителя отреагировали дети, у детей может быть свои потомки, и это упрощает работу с элементами навигации.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
У меня есть заказчик с Турции и у него сайт выглядит так как будто там не прогрузился CSS, а у меня всё норм долго не мог понять в чём проблема...
Прошу помощи в следующей задаче: Хочу реализовать адаптивную секцию с текстом и изображением 50/50 на полный экранЖелательно в CSS самым элементарным...
Хотите улучшить этот вопрос? Обновите вопрос так, чтобы он вписывался в тематику Stack Overflow на русском