Здравствуйте. Делаю меню под телефон. Чтобы было красивое появление, хочу добавить динамики.
.menu-phone > li {
display: none;
transition: 2s;
opacity: 0;
}
.menu-phone:active li {
display: block;
opacity: 1;
}
.menu-phone:hover li {
display: block;
opacity: 1;
}
Но листы все равно сразу видны, не срабатывает transition: 2s;
. Пока не добавлял
.menu-phone:hover li {
display: block;
opacity: 1;
}
то они срабатывали в обратную сторону (исчезали), но без hover
лист тогда сразу исчезает обратно.
transition
свойство не работает на свойство display:block\none;
! Используйте без него или используйте visibility: hidden
, так же можно играть с высотой
Пример на jsFiddle
.parent {
width: 100px;
height: 100px;
background: #000;
overflow: hidden;
}
.child {
visibility: hidden;
width: 50px;
height: 0px;
background: violet;
transition: all 1s;
opacity: 0;
}
.parent:hover .child {
visibility: visible;
height: 50px;
opacity: 1;
}
<div class="parent">
<div class="child">
</div>
</div>
Попробуйте так
.menu-phone > li {
display: none;
transition: 2s;
opacity: 0;
}
.menu-phone:active li {
display: block;
transition: 2s;
opacity: 1;
}
.menu-phone:hover li {
display: block;
transition: 2s;
opacity: 1;
}
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
ЗдравствуйтеПытаюсь сделать слайдер на сайте
Проблема в том, что раскрывается резко, а вот в обратную сторону работает как надо
На мобильной версии сайта, после выбора значения в нативном дропдауне страница увеличивается (зумиться)Как это можно исправить помимо добавления...