当前位置:首页 > CSS

css3 动画制作

2026-02-12 12:22:35CSS

CSS3 动画制作基础

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

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

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

关键帧定义

使用 @keyframes 定义动画序列,fromto 分别表示起始和结束状态,也可用百分比指定中间步骤。

@keyframes pulse {
  0% { opacity: 1; }
  50% { opacity: 0.5; }
  100% { opacity: 1; }
}

动画属性

animation 是以下子属性的简写:

  • animation-name: 关键帧名称
  • animation-duration: 动画时长(如 2s
  • animation-timing-function: 速度曲线(如 ease, linear
  • animation-delay: 延迟启动时间
  • animation-iteration-count: 循环次数(infinite 表示无限)
  • animation-direction: 播放方向(alternate 来回播放)
  • animation-fill-mode: 结束后的样式保留(如 forwards
.box {
  animation: pulse 2s ease-in-out 0.5s infinite alternate;
}

变换与过渡

结合 transform 实现位移、旋转、缩放等效果,transition 用于属性变化的平滑过渡。

.button {
  transition: background-color 0.3s ease;
}
.button:hover {
  background-color: #ff0000;
  transform: scale(1.1);
}

性能优化

  • 优先使用 opacitytransform,它们可通过 GPU 加速。
  • 避免频繁触发重排(如修改 width/height)。
  • 使用 will-change 提示浏览器优化。
.optimized {
  will-change: transform;
}

实际案例:旋转加载动画

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

.loader {
  animation: spin 1s linear infinite;
  border: 4px solid rgba(0,0,0,0.1);
  border-radius: 50%;
  border-top-color: #3498db;
  width: 40px;
  height: 40px;
}

css3 动画制作

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

相关文章

css动画制作原理

css动画制作原理

CSS动画制作原理 CSS动画通过改变元素的样式属性实现动态效果,主要依赖关键帧(@keyframes)和动画属性(如animation-name、animation-duration)的配合。核心原…

css动画制作图片

css动画制作图片

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

css3前端动画制作

css3前端动画制作

CSS3 前端动画制作方法 CSS3 提供了多种方式实现动画效果,包括过渡(transition)、关键帧动画(keyframes)和变换(transform)。以下是具体实现方法: 过渡动画(Tr…

css3菊花动画制作

css3菊花动画制作

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

css动画制作效果

css动画制作效果

CSS 动画基础语法 CSS 动画通过 @keyframes 规则定义动画序列,再通过 animation 属性将动画应用到元素上。 定义关键帧: @keyframes slideIn…

css打勾动画制作

css打勾动画制作

CSS打勾动画制作方法 使用CSS制作打勾动画可以通过伪元素和关键帧动画实现,以下是具体实现方式: HTML结构 <div class="checkmark"></div>…