当前位置:首页 > CSS

css3动画制作

2026-01-13 11:55:17CSS

CSS3 动画基础

CSS3 动画通过 @keyframes 规则和 animation 属性实现。@keyframes 定义动画的关键帧,animation 控制动画的播放方式(如持续时间、延迟、循环次数等)。

关键帧语法示例:

@keyframes slideIn {
  from { transform: translateX(-100%); }
  to { transform: translateX(0); }
}

动画属性示例:

.element {
  animation: slideIn 1s ease-in-out 0.5s infinite alternate;
}
  • slideIn:动画名称。
  • 1s:动画持续时间。
  • ease-in-out:缓动函数(控制速度曲线)。
  • 0.5s:延迟时间。
  • infinite:无限循环(可选 2 等具体次数)。
  • alternate:往返播放(可选 normalreverse)。

常用动画效果示例

1. 淡入效果

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
.fade-in { animation: fadeIn 0.5s; }

2. 旋转效果

@keyframes spin {
  to { transform: rotate(360deg); }
}
.spin { animation: spin 2s linear infinite; }

3. 弹跳效果

@keyframes bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-20px); }
}
.bounce { animation: bounce 0.5s ease-in-out 3; }

控制动画的进阶属性

  • animation-fill-mode:定义动画结束后的状态(如 forwards 保留最后一帧)。
  • animation-play-state:通过 JavaScript 动态控制(如 paused 暂停动画)。
  • 多动画组合:用逗号分隔多个动画名称和参数。

示例:

css3动画制作

.box {
  animation: 
    fadeIn 1s forwards,
    slideIn 0.5s ease-out 1s;
}

性能优化建议

  • 优先使用 transformopacity,这些属性不会触发重排(性能更高)。
  • 避免频繁动画影响性能,可使用 will-change: transform; 提示浏览器优化。
  • 使用硬件加速:如 transform: translateZ(0);

浏览器兼容性

  • 现代浏览器(Chrome、Firefox、Safari、Edge)均支持 CSS3 动画。
  • 前缀兼容(如 -webkit-)逐渐不再必要,但可通过工具(Autoprefixer)自动添加。

通过结合关键帧和动画属性,可以实现复杂的交互效果,适用于按钮反馈、页面过渡等场景。

标签: 动画制作
分享给朋友:

相关文章

css动画制作图片

css动画制作图片

CSS动画制作图片的方法 使用CSS动画可以为图片添加各种动态效果,如旋转、缩放、淡入淡出等。以下是几种常见的CSS动画实现方式。 基础动画实现 通过@keyframes定义动画序列,并将其应用到图…

css3在线动画制作

css3在线动画制作

CSS3 在线动画制作工具 以下是一些常用的在线工具,可以帮助快速生成CSS3动画代码,无需手动编写全部代码: Animista 网址:https://animista.net/ 特点:提供预设的C…

css3菊花动画制作

css3菊花动画制作

使用 CSS3 制作菊花动画 菊花动画通常指一种旋转的加载动画,类似于花瓣旋转的效果。以下是几种实现方法: 关键帧动画实现 通过 @keyframes 定义旋转动画,结合 transform 和 o…

css路径动画制作

css路径动画制作

CSS路径动画制作方法 CSS路径动画可以通过offset-path和animation属性实现元素沿自定义路径运动。现代浏览器支持SVG路径或CSS基本形状作为运动轨迹。 定义路径 使用SVG路径…

css动画制作

css动画制作

CSS动画基础语法 CSS动画通过@keyframes规则定义动画序列,再通过animation属性绑定到元素上。基本语法结构分为两部分: @keyframes 动画名称 { 0% { /* 起…

css3 动画制作

css3 动画制作

CSS3 动画制作基础 CSS3 动画通过 @keyframes 规则和 animation 属性实现。定义关键帧后,将其绑定到元素上,设置持续时间、延迟、循环方式等参数。 @keyframes s…