当前位置:首页 > 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往返播放)。

复合写法:

.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动态添加类名实现交互触发:

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 样式制作基础 CSS(层叠样式表)用于控制网页的视觉呈现。通过选择器和属性组合,可以精确调整元素的布局、颜色、字体等样式。 选择器类型 元素选择器:p { color: red; } 选中…

css按钮制作

css按钮制作

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

css 导航栏制作

css 导航栏制作

水平导航栏制作 使用无序列表<ul>和<li>标签构建基础结构,通过CSS将列表项横向排列 <nav> <ul class="horizontal-na…

css 制作目录

css 制作目录

CSS 制作目录的方法 使用 CSS 可以轻松为网页内容创建美观且功能性的目录。以下是几种常见方法: 使用 ul 和 li 创建基础目录结构 <div class="toc">…

css继承制作教程

css继承制作教程

CSS继承的基本概念 CSS继承是指某些CSS属性可以从父元素传递到子元素的特性。并非所有属性都支持继承,但常见的文本相关属性(如font-family、color)默认具有继承性。通过合理利用继承,…

css怎么制作评论框

css怎么制作评论框

制作评论框的CSS方法 评论框通常包含输入区域、提交按钮和样式设计。以下是实现评论框的CSS代码示例和设计要点。 HTML结构 <div class="comment-box">…