当前位置:首页 > CSS

css制作动画

2026-02-13 05:00:25CSS

CSS 动画基础

CSS 动画通过 @keyframes 规则和 animation 属性实现。@keyframes 定义动画的中间状态,animation 控制动画的播放方式。

@keyframes example {
  0% { background-color: red; }
  50% { background-color: yellow; }
  100% { background-color: green; }
}

.element {
  animation: example 3s ease-in-out infinite;
}

关键属性说明

  • animation-name: 指定 @keyframes 名称。
  • animation-duration: 动画持续时间(如 2s)。
  • animation-timing-function: 速度曲线(如 ease, linear)。
  • animation-delay: 动画延迟时间(如 1s)。
  • animation-iteration-count: 播放次数(如 infinite)。
  • animation-direction: 播放方向(如 alternate 往返播放)。

过渡动画(Transition)

CSS 过渡用于在元素状态变化时平滑过渡效果,常用属性包括:

  • transition-property: 指定过渡属性(如 allopacity)。
  • transition-duration: 过渡持续时间。
  • transition-timing-function: 速度曲线。
  • transition-delay: 过渡延迟。
.button {
  background: blue;
  transition: background 0.5s ease;
}
.button:hover {
  background: red;
}

动画性能优化

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

复杂动画示例

结合 transform@keyframes 实现旋转与缩放:

@keyframes spin-scale {
  0% { transform: rotate(0deg) scale(1); }
  50% { transform: rotate(180deg) scale(1.5); }
  100% { transform: rotate(360deg) scale(1); }
}

.box {
  animation: spin-scale 2s linear infinite;
}

动画事件监听

通过 JavaScript 监听动画事件:

css制作动画

  • animationstart: 动画开始。
  • animationend: 动画结束。
  • animationiteration: 每次迭代触发。
const element = document.querySelector('.box');
element.addEventListener('animationend', () => {
  console.log('Animation finished');
});

标签: 动画css
分享给朋友:

相关文章

css 制作表格

css 制作表格

基础表格结构 使用HTML的<table>标签创建表格框架,搭配<tr>(行)、<th>(表头)和<td>(单元格)标签。例如: <table&…

怎么制作css文档

怎么制作css文档

创建CSS文档的基本步骤 新建一个纯文本文件,将文件后缀名改为.css,例如styles.css。使用代码编辑器(如VS Code、Sublime Text等)打开文件,开始编写CSS规则。 编写C…

css制作时间轴

css制作时间轴

使用 Flexbox 布局制作时间轴 通过 Flexbox 可以快速实现水平或垂直时间轴。以下是一个垂直时间轴的示例代码: .timeline { display: flex; flex-d…

css个人简历制作两页

css个人简历制作两页

使用CSS制作两页个人简历 创建两页的个人简历需要合理布局和分页控制,以下是实现方法: HTML基础结构 <!DOCTYPE html> <html lang="zh-CN">…

css制作菜单

css制作菜单

CSS 制作菜单的方法 使用 CSS 可以制作多种风格的菜单,包括水平菜单、垂直菜单、下拉菜单等。以下是几种常见的实现方式。 水平菜单 水平菜单通常用于导航栏,可以通过 display: inlin…

css制作按钮

css制作按钮

基础按钮样式 使用CSS创建一个基础按钮需要定义display、padding、background-color和border等属性。以下是一个简单的示例: .button { display:…