当前位置:首页 > 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 是以下子属性的简写:

  • 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;
}

动画效果示例

旋转动画

@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 可监听动画开始、结束或重复事件:

css中动画制作

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

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

相关文章

制作css

制作css

CSS基础语法 CSS规则由选择器和声明块组成。选择器指向需要设置样式的HTML元素,声明块包含一个或多个用分号分隔的声明。每个声明由属性和值组成,用冒号分隔。 选择器 { 属性: 值; 属…

用css制作网页

用css制作网页

创建HTML文件结构 新建一个index.html文件,写入基础HTML5结构。通过<link>标签引入外部CSS文件,示例结构如下: <!DOCTYPE html> <…

css制作tab菜单

css制作tab菜单

CSS制作Tab菜单的方法 HTML结构 使用无序列表和div容器构建基础结构,列表项为标签页标题,div内放置对应内容块。 <ul class="tab-menu"> <li…

css制作时间轴

css制作时间轴

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

简历制作css

简历制作css

简历制作CSS技巧 使用CSS美化简历可以提升视觉效果和专业性。以下是一些关键方法和代码示例: 基础样式设置 body { font-family: 'Arial', sans-serif;…

css表格制作

css表格制作

CSS表格制作方法 使用CSS创建表格可以通过多种方式实现,以下是常见的几种方法: 使用HTML原生表格标签结合CSS样式 <table class="styled-table">…