css - CSS 动画:永久淡出
问题描述
我有一个 div,我用 css 淡入(从右到左):
CSS:
#mydiv {
animation: slideIn 1s ease 0s 1;
}
@keyframes slideIn {
0% {
transform: translateX(100%);
}
100% {
transform: translateX(0%);
}
}
当我单击关闭按钮时,它应该以相同的方式淡出:
JS:
$("#close").on('click', function(e) {
$("#mydiv").css({ 'animation': 'slideOut 1s ease 0s 1' });
});
CSS:
@keyframes slideOut {
0% {
transform: translateX(0%);
}
100% {
transform: translateX(100%);
}
}
淡出动画有效,但淡出后,mydiv 立即出现在初始位置。我能做些什么来防止这种情况发生?使用jQuery设置display:none
动画后,抑制动画。
解决方案
也许您正在寻找的是animation-fill-mode
财产。它使<div>
元素在动画结束时保留最后一个关键帧的样式值。你可以在这里阅读
推荐阅读
- python - 如何访问 MySQL python 库异常中的错误代码
- node.js - VS Code 插件,告诉您导出导入了多少次?
- symfony - symfony 升级到 3.4 实现 DataCollectorInterface
- ubuntu - 出错时 - sudo systemctl start jenkins
- excel - Excel VBA - 分析共享邮箱 Outlook - 运行时错误 1004:应用程序定义或对象定义错误
- c# - 使用带有图片框的 foreach 循环
- matlab - 在 Matlab 中绘制 FCM 簇
- reporting-services - 带有客户属性的 SSRS 报告参数
- python - 处理文件名中的“/”
- excel - VBA 宏在 XLS 兼容模式下不起作用`