当前位置:首页 > CSS

css制作动画

2026-01-28 10:36:46CSS

CSS动画基础

CSS动画通过@keyframesanimation属性实现。@keyframes定义动画的关键帧,animation将动画应用到元素上。

示例代码:

/* 定义关键帧 */
@keyframes slideIn {
  from { transform: translateX(-100%); }
  to { transform: translateX(0); }
}

/* 应用动画 */
.element {
  animation: slideIn 1s ease-in-out;
}

关键属性

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

复合写法:

css制作动画

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

多关键帧动画

@keyframes可以定义多个中间状态:

@keyframes pulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.2); }
  100% { transform: scale(1); }
}

触发动画

动画默认在页面加载时触发。通过JavaScript动态添加类名实现交互触发:

css制作动画

document.querySelector('.element').classList.add('animate');

对应CSS:

.animate {
  animation: slideIn 1s;
}

性能优化

  • 使用transformopacity属性(硬件加速性能更好)。
  • 避免频繁触发重排(如修改widthheight)。

浏览器兼容性

  • 前缀支持:旧版浏览器可能需要-webkit-前缀(如-webkit-animation)。
  • 使用工具(如Autoprefixer)自动添加前缀。

动画与过渡的区别

  • CSS过渡(Transition):需状态变化(如:hover)触发,仅定义起始和结束状态。
  • CSS动画(Animation):可自动运行,支持多关键帧和复杂控制。

过渡示例:

.element {
  transition: transform 0.3s ease;
}
.element:hover {
  transform: rotate(45deg);
}

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

相关文章

用css制作表格

用css制作表格

使用CSS制作表格 CSS可以用来样式化HTML表格,使其更具视觉吸引力和功能性。以下是几种常见的方法: 基础表格样式 通过CSS可以调整表格的边框、间距和颜色: <table>…

css图形制作

css图形制作

CSS 图形制作方法 使用 CSS 可以创建各种基本和复杂的图形,主要通过 border、transform、clip-path 等属性实现。以下是几种常见图形的实现方式: 三角形 通过设置元素的…

网页制作css是什么

网页制作css是什么

CSS的定义与作用 CSS(Cascading Style Sheets,层叠样式表)是一种用于描述网页外观和格式的样式语言。它通过定义HTML元素的布局、颜色、字体等视觉属性,实现内容与表现的分离,…

css个人简历制作两页

css个人简历制作两页

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

制作外置css

制作外置css

创建外置CSS文件 新建一个文本文件,将其命名为style.css。确保文件扩展名为.css,而不是.txt。使用代码编辑器(如VS Code、Sublime Text等)打开该文件进行编辑。 /*…

css制作栅格

css制作栅格

CSS 栅格布局基础 CSS Grid 布局是一种强大的二维布局系统,允许开发者通过行和列来设计复杂的网页布局。栅格系统由容器(grid container)和项目(grid items)组成。 定…