当前位置:首页 > CSS

css动画制作弹球

2026-03-11 20:43:35CSS

CSS动画制作弹球效果

弹球动画可以通过CSS的@keyframesanimation属性实现,结合物理运动轨迹(如抛物线或弹性效果)模拟真实弹跳。

基础弹跳动画

定义一个球体元素并添加垂直弹跳动画:

<div class="ball"></div>
.ball {
  width: 50px;
  height: 50px;
  background: #ff5252;
  border-radius: 50%;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  animation: bounce 1s infinite alternate;
}

@keyframes bounce {
  from { bottom: 0; }
  to { bottom: 200px; }
}

添加缓动效果

使用cubic-bezier函数模拟重力加速度:

.ball {
  animation: bounce 1s cubic-bezier(0.5, 0.05, 0.5, 1) infinite;
}

完整抛物线弹跳

结合水平移动和垂直弹跳:

@keyframes bounce {
  0% { 
    bottom: 0;
    left: 0;
    animation-timing-function: ease-out;
  }
  50% {
    bottom: 200px;
    left: 100px;
    animation-timing-function: ease-in;
  }
  100% {
    bottom: 0;
    left: 200px;
  }
}

墙壁碰撞效果

通过transform: scale模拟撞击时的形变:

@keyframes bounce {
  0%, 100% {
    transform: translateX(0) scale(1, 1);
  }
  25% {
    transform: translateX(100px) scale(0.9, 1.1);
  }
  75% {
    transform: translateX(-100px) scale(0.9, 1.1);
  }
}

多方向弹跳

使用多个关键帧实现复杂轨迹:

css动画制作弹球

@keyframes crazyBounce {
  0% { top: 10%; left: 10%; }
  20% { top: 50%; left: 30%; }
  40% { top: 20%; left: 80%; }
  60% { top: 70%; left: 60%; }
  80% { top: 40%; left: 40%; }
  100% { top: 10%; left: 10%; }
}

性能优化建议

  • 使用will-change: transform提升动画性能
  • 优先使用transformopacity属性
  • 避免频繁触发重排的属性如width/height

分享给朋友:

相关文章

css动画制作图片

css动画制作图片

CSS动画制作图片的方法 使用CSS动画可以为图片添加各种动态效果,如旋转、缩放、淡入淡出等。以下是几种常见的CSS动画实现方式。 基础动画实现 通过@keyframes定义动画序列,并将其应用到图…

css3在线动画制作

css3在线动画制作

CSS3 在线动画制作工具 以下是一些常用的在线工具,可以帮助快速生成CSS3动画代码,无需手动编写全部代码: Animista 网址:https://animista.net/ 特点:提供预设的C…

css帧动画制作视频

css帧动画制作视频

CSS帧动画制作方法 使用CSS的@keyframes规则和animation属性可以创建帧动画效果。以下是一个基本示例: @keyframes example { 0% {backgrou…

css动画制作

css动画制作

CSS动画基础语法 CSS动画通过@keyframes规则定义动画序列,再通过animation属性绑定到元素上。基本语法结构分为两部分: @keyframes 动画名称 { 0% { /* 起…

css3 动画制作

css3 动画制作

CSS3 动画制作基础 CSS3 动画通过 @keyframes 规则和 animation 属性实现。定义关键帧后,将其绑定到元素上,设置持续时间、延迟、循环方式等参数。 @keyfram…

css3前端动画制作

css3前端动画制作

CSS3 前端动画制作方法 使用 transition 制作过渡动画 transition 用于在元素状态变化时添加平滑过渡效果。可以定义过渡的属性、持续时间、延迟时间和速度曲线。 .box {…