CSS @keyframes 规则
更多“自己尝试”的例子见下文。
定义和用法
@keyframes
规则指定了动画代码。
动画是通过逐渐从一组 CSS 样式变为另一组 CSS 样式来创建的。
在动画过程中,您可以多次更改 CSS 样式集。
以百分比指定样式更改何时发生,或使用关键字“from”和“to”,这与 0% 和 100% 相同。0% 是动画的开始,100% 是动画完成时。
提示:为了获得最佳浏览器支持,您应该始终同时定义 0% 和 100% 选择器。
注意:使用动画属性控制动画的外观,并绑定动画到选择器。
注意:!important 规则在关键帧中被忽略(请参阅本页的最后一个示例)。
浏览器支持
表格中的数字表示完全支持该规则的第一个浏览器版本。
属性 | |||||
---|---|---|---|---|---|
@keyframes | 43 | 10 | 16 | 9 | 30 |
CSS 语法
@keyframes 动画名称 {关键帧选择器 {css-样式;}}
属性值
值 | 描述 |
---|---|
动画名称 | 必需。定义动画的名称。 |
关键帧选择器 | 必需。动画持续时间的百分比。 合法值 0-100% 注意:一个动画中可以有多个关键帧选择器。 |
css-样式 | 必需。一个或多个合法的 CSS 样式属性 |
更多示例
示例
在一个动画中添加多个关键帧选择器
@keyframes mymove {
0% {top: 0px;}
25% {top: 200px;}
50% {top: 100px;}
75% {top: 200px;}
100% {top: 0px;}
}
自己动手试一试 »
示例
在一个动画中更改多个 CSS 样式
@keyframes mymove {
0% {top: 0px; background: red; width: 100px;}
100% {top: 200px; background: yellow; width: 300px;}
}
自己动手试一试 »
示例
带有多个 CSS 样式的多个关键帧选择器
@keyframes mymove {
0% {top: 0px; left: 0px; background: red;}
25% {top: 0px; left: 100px; background: blue;}
50% {top: 100px; left: 100px; background: yellow;}
75% {top: 100px; left: 0px; background: green;}
100% {top: 0px; left: 0px; background: red;}
}
自己动手试一试 »
示例
注意:!important 规则在关键帧中被忽略
@keyframes myexample {
from {top: 0px;}
50% {top: 100px !important;} /* 忽略 */
to {top: 200px;}
}
自己动手试一试 »
相关页面
CSS 教程:CSS 动画