当前位置:首页 > CSS

css中动画制作

2026-01-28 17:33:31CSS

CSS 动画基础

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

示例:淡入动画

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
.element {
  animation: fadeIn 2s ease-in-out;
}

关键帧定义

@keyframes 支持百分比或 from/to 语法定义动画阶段。

@keyframes slide {
  0% { transform: translateX(0); }
  50% { transform: translateX(100px); }
  100% { transform: translateX(0); }
}

动画属性

animation 是以下子属性的简写:

css中动画制作

  • animation-name: 关键帧名称(如 fadeIn)。
  • animation-duration: 动画时长(如 3s)。
  • animation-timing-function: 速度曲线(如 easelinear)。
  • animation-delay: 延迟时间(如 1s)。
  • animation-iteration-count: 重复次数(如 infinite)。
  • animation-direction: 播放方向(如 alternate)。
  • animation-fill-mode: 结束后的样式(如 forwards)。

示例:组合属性

.element {
  animation: slide 3s ease 1s infinite alternate forwards;
}

动画效果示例

旋转动画

css中动画制作

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

背景色渐变

@keyframes colorChange {
  0% { background-color: red; }
  50% { background-color: yellow; }
  100% { background-color: blue; }
}
.box {
  animation: colorChange 5s infinite;
}

性能优化

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

响应式动画

通过媒体查询调整动画行为:

@media (max-width: 600px) {
  .element { animation-duration: 1s; }
}

动画事件监听

JavaScript 可监听动画开始、结束或重复事件:

const element = document.querySelector('.element');
element.addEventListener('animationend', () => {
  console.log('动画结束');
});

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

相关文章

css导航栏制作

css导航栏制作

CSS导航栏制作方法 水平导航栏 使用display: inline-block或flexbox布局创建水平导航栏。设置背景色、间距和悬停效果增强视觉体验。 <nav class="hori…

css3 动画制作

css3 动画制作

CSS3 动画基础 CSS3 动画通过 @keyframes 规则和 animation 属性实现。@keyframes 定义动画的关键帧,animation 控制动画的播放方式(如时长、延迟、循环等…

css div 制作导航菜单

css div 制作导航菜单

基本导航菜单结构 使用HTML创建一个简单的导航菜单结构,通常使用<ul>和li>列表实现。每个菜单项用<a>标签包裹以实现链接功能。 <div class="n…

css制作登录界面

css制作登录界面

使用CSS制作登录界面 登录界面是网站常见的功能模块,通过CSS可以实现美观且响应式的设计。以下是一个基础的登录界面实现方法。 HTML结构 基础的HTML结构包含表单元素,如输入框、按钮和标签。…

css制作详情页

css制作详情页

CSS制作详情页的关键步骤 布局规划 确定详情页的整体布局结构,通常包括头部、商品展示区、参数区、评价区等模块。使用Flexbox或Grid布局实现响应式设计,确保在不同设备上正常显示。 样式设计…

用css制作导航条

用css制作导航条

水平导航条制作 使用display: inline-block或flexbox实现水平导航 为<ul>和<li>设置样式消除默认列表样式 添加padding和margin控制间…