当前位置:首页 > CSS

制作css动画效果

2026-03-12 10:50:10CSS

CSS动画基础语法

CSS动画通过@keyframes规则定义动画序列,结合animation属性实现。关键帧语法示例:

制作css动画效果

@keyframes slide-in {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(0); }
}
.element {
  animation: slide-in 1s ease-out forwards;
}

常用动画属性

  • animation-name: 指定@keyframes名称
  • animation-duration: 动画持续时间(如2s)
  • animation-timing-function: 速度曲线(ease/linear/ease-in-out)
  • animation-delay: 延迟启动时间
  • animation-iteration-count: 重复次数(infinite表示无限循环)
  • animation-direction: 播放方向(alternate表示往返播放)
  • animation-fill-mode: 动画结束后的样式状态

实用动画效果示例

淡入效果:

制作css动画效果

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
.fade-in {
  animation: fadeIn 0.8s cubic-bezier(0.39, 0.58, 0.57, 1);
}

弹跳按钮:

@keyframes bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-20px); }
}
.btn-bounce {
  animation: bounce 0.5s infinite alternate;
}

性能优化技巧

  • 优先使用transformopacity属性,这些属性不会触发重排
  • 避免动画影响width/height/margin等会触发布局变化的属性
  • 使用will-change: transform;提前告知浏览器元素将发生变化
  • 对移动端设备使用@media (prefers-reduced-motion)减少动画效果

复杂动画组合

通过多个动画叠加实现复杂效果:

@keyframes spin {
  to { transform: rotate(360deg); }
}
@keyframes pulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.2); }
  100% { transform: scale(1); }
}
.spin-pulse {
  animation: 
    spin 2s linear infinite,
    pulse 1.5s ease-in-out infinite;
}

标签: 效果动画
分享给朋友:

相关文章

vue动画实现原理

vue动画实现原理

Vue动画实现原理 Vue的动画系统基于CSS过渡和动画,结合Vue的响应式系统,提供声明式的方式管理元素进入/离开的动画效果。核心原理分为以下几个部分: 过渡类名自动应用 Vue在元素插入/删除时…

vue加载动画实现

vue加载动画实现

Vue 加载动画实现方法 使用 CSS 动画或过渡 在 Vue 组件中可以直接通过 CSS 实现加载动画效果。定义一个简单的旋转动画: .loading-spinner { width: 40p…

uniapp 卡片效果

uniapp 卡片效果

uniapp 实现卡片效果的方法 使用 view 和 CSS 样式 通过 view 组件结合 CSS 样式可以快速实现卡片效果。设置圆角、阴影和边距来增强视觉层次感。 <view class=…

vue实现滚动效果

vue实现滚动效果

Vue 实现滚动效果的方法 使用原生滚动方法 通过 Vue 的 ref 获取 DOM 元素,调用原生 scrollTo 或 scrollIntoView 方法实现滚动。 <template&g…

vue实现路由动画

vue实现路由动画

路由动画的实现方法 在Vue中实现路由动画通常结合<transition>组件和Vue Router的导航守卫。以下是几种常见实现方式: 基础过渡动画 <template>…

vue实现的动画

vue实现的动画

Vue 动画实现方式 Vue 提供了多种方式来实现动画效果,包括内置的过渡系统、第三方动画库以及直接使用 CSS 动画。以下是几种常见的实现方法: 使用 Vue 过渡系统 Vue 的 <tra…