Допустим, у меня есть элемент HTML, красный с прозрачностью. Когда я нахожу элемент, он должен стать сплошным красным. Когда я перестаю парить элемент, он должен вернуться в первое состояние, но только через X секунд.CSS-анимация, затухание в фоновом режиме при наведении, пребывание и возврат к предыдущему после задержки
Пока все хорошо, см. Фрагмент кода.
Моя проблема в том, что я перестаю парить элемент, а затем вернусь к его зависанию. Начальная анимация начинается снова, но у нее нет анимации, а начальное состояние еще не началось, и поэтому есть уродливый прыжок с полного цвета на прозрачность, а затем исчезает до полного цвета.
Есть ли способ решить эту проблему без JavaScript?
Затем, установив фон div на полный цвет, цвет не сохраняется. Но он также устанавливает его на исходный цвет. Как я могу это решить? Удаление его удаляет только цвет, когда он не витает!
Непрозрачность с переходом не является вариантом, так как у меня есть контент внутри этого div.
div {
width: 100px;
height: 100px;
background: rgba(50, 60, 95, 1);
animation-name: fadeItOut;
animation-duration: 1s;
animation-delay: 2s;
animation-fill-mode: forwards;
}
div:hover {
animation-name: fadeItIn;
animation-duration: 1s;
animation-delay: 0s;
animation-fill-mode: forwards;
}
@keyframes fadeItIn {
0% {
background: rgba(50, 60, 95, 0.3);
}
100% {
background: rgba(50, 60, 95, 1);
}
}
@keyframes fadeItOut {
0% {
background: rgba(50, 60, 95, 1);
}
100% {
background: rgba(50, 60, 95, 0.3);
}
}
<div></div>
К сожалению, я могу полностью пропустил точку, но почему бы не просто сделать [это] (https://jsfiddle.net/ nwvkzsvw /)? – Harry