

新闻资讯
技术学院@keyframes用于定义动画关键帧,animation属性引用其名称实现动画效果。1. 定义@keyframes规则设置样式状态;2. 在元素中通过animation调用名称、设置时长和缓动函数;3. 可定义多阶段动画如淡入淡出循环;4. 注意@keyframes全局有效、不可嵌套、名称需拼写一致,支持多个动画逗号分隔。先定义后引用是核心逻辑。
在 CSS 中,@keyframes 并不能嵌套在 animation 属性中,它们是两个独立但相互关联的语法结构。你需要先定义一个 @keyframes 规则,然后通过 animation 属性引用这个规则。
使用 @keyframes 定义动画的关键帧,指定元素在不同时间点的样式状态:
@keyframes slideIn { from { transform: translateX(-100%); } to { transform: translateX(0); } }在元素的样式中,使用 animation 属性调用已定义的
keyframes 名称:
这里 slideIn 就是对 @keyframes 名称的引用,2s 是持续时间,ease-in-out 是缓动函数。
你也可以定义更复杂的动画过程:
@keyframes fadeInOut { 0% { opacity: 0; } 50% { opacity: 1; } 100% { opacity: 0; } } .fade-element { animation: fadeInOut 4s infinite; }这个例子让元素淡入再淡出,循环播放。
基本上就这些。CSS 动画的设计逻辑是“先定义,再引用”,理解这一点就能正确使用 animation 和 @keyframes 配合实现动态效果。