Изменение родительского стиля и фокусе дочернего
Ребят, запутался в селекторах. Подскажите как реализовать следующую вещь (и можно ли это сделать):
<div class="a"> <div class="b"> <div class="c"></div> <div class="c"></div> <div class="c"></div> </div> </div> задача: при фокусе "с" менять стиль у "а". .a .c:focus{ /*задаем стиль фокусного "с"*/ } А есть ли конструкция позволяющая менять стиль у "а" при ".c:focus"? или только javascript? |
Siend,
С дочернего на родительский с помощью css стиль не изменить, только скрипт. (если только margin:-XXpx, не вывести все элементы c за пределы b и а (т.е они их будут перекрывать) тогда фокус на a никак не сделать, кроме как ткнуть с Тады просто прописываем а:focus{ поскольку он будет лишь через фокус на с Можно сделать при этом псевдовидимость а и b, перекрыв их широкими бордерами с прозрачным цветом от блоков с |
Спасибо, идею понял)
просто такая вот проблема возникла: Есть выпадающий список, взят из примера (ссылка на пример). В примере при выборе пункта меню ничего не происходит, пока не кликнешь в сторону от меня, а я хочу добиться чтобы при нажатии на выпадающий пункт меню, все подменю скрывалось. <ul class="menu"> <li tabindex="0"> <span class="helix_subfont">Выбранный пункт меню</span> <ul class="submenu helix helix_subfont"> <li>Пункт меню</li> <li>Пункт меню</li> <li>Пункт меню</li> </ul> </li> </ul> .submenu { ... max-height: 0; pointer-events: none; } .menu > li:hover .submenu, .menu > li:focus .submenu { pointer-events: auto; max-height: 2000; ... } Я решил проблему на jquery: $(".menu .submenu li").click(function(e) { $(".menu .submenu:hover").css({ "pointer-events": "none" }); }); $(".menu li").hover(function () { $(".menu .submenu").css({ "pointer-events": "auto" }); }, function () {}); Но решение на css было бы красивее и правильнее( |
Часовой пояс GMT +3, время: 07:40. |