Я предлагаю вам определить свою собственную анимацию, если она не работает, как вы sh. Если я не ошибаюсь, предопределенная анимация выглядит примерно так:
@keyframes slideInDown {
from {
transform: translate3d(0, -100%, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
}
}
Итак, ваша анимация должна быть:
@keyframes slideInDown {
from {
transform: translate3d(0, -100%, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
visibility: visible;
}
}
, а затем просто добавьте animation-fill-mode: forwards;
к вашему li в css, чтобы сохранить видимость (чтобы ваш css стал чем-то вроде):
@keyframes slideInDown {
from {
transform: translate3d(0, -100%, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
visibility: visible;
}
}
.menu-ani-item {
li {
animation: slideInDown 2s;
animation-fill-mode: forwards;
visibility: hidden;
...
Рабочий пример здесь
Возможно, вам потребуется добавить префиксы поставщиков в ключевые кадры, чтобы убедиться, что все работает нормально кросс-браузеров. Вы можете прочитать больше о них здесь и здесь . Но в s css вы можете определить префикс общего поставщика, например здесь