CSS

CSS 动画与关键帧

学习如何使用 @keyframes 创建流畅的 CSS 动画。从简单过渡到复杂的多步骤动画。

关键帧动画

使用 @keyframes 定义动画序列:

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

.element {
  animation: fadeIn 1s ease-in-out;
}

动画属性

animation-name关键帧名称
animation-duration持续时间
animation-timing-function缓动函数
animation-delay延迟时间
animation-iteration-count重复次数
animation-direction动画方向
animation-fill-mode填充模式
animation-play-state播放状态

缓动函数

ease
快-慢
ease-in
慢开始
ease-out
慢结束
linear
匀速

常用动画示例

弹跳效果

@keyframes bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-20px); }
}

脉冲效果

@keyframes pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.1); }
}

旋转效果

@keyframes rotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

相关工具

动画生成器

可视化生成动画效果