&…">
当前位置:首页 > CSS

css制作弹跳球

2026-03-11 20:57:45CSS

使用CSS动画制作弹跳球

创建一个弹跳球效果可以通过CSS的animationkeyframes实现。以下是一个完整的实现方法:

HTML结构

<div class="ball"></div>

CSS样式

.ball {
  width: 50px;
  height: 50px;
  background-color: #ff5722;
  border-radius: 50%;
  position: relative;
  animation: bounce 1s infinite alternate;
}

@keyframes bounce {
  0% {
    top: 0;
    transform: scale(1, 1);
  }
  50% {
    top: 200px;
    transform: scale(1.1, 0.9);
  }
  100% {
    top: 0;
    transform: scale(1, 1);
  }
}

添加弹性效果

为了让弹跳更真实,可以调整动画的时间函数和缩放效果:

.ball {
  /* 其他样式保持不变 */
  animation: bounce 0.6s cubic-bezier(0.5, 0.05, 0.5, 1) infinite;
}

@keyframes bounce {
  0% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(150px) scale(1.1, 0.8);
  }
  100% {
    transform: translateY(0) scale(1);
  }
}

添加阴影效果

为增强立体感,可以添加随球体移动的阴影:

.ball-container {
  position: relative;
  height: 250px;
}

.ball {
  /* 球体样式同上 */
}

.shadow {
  width: 40px;
  height: 10px;
  background: rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  animation: shadow 0.6s cubic-bezier(0.5, 0.05, 0.5, 1) infinite;
}

@keyframes shadow {
  0% {
    transform: translateX(-50%) scale(1);
    opacity: 0.8;
  }
  50% {
    transform: translateX(-50%) scale(0.7);
    opacity: 0.3;
  }
  100% {
    transform: translateX(-50%) scale(1);
    opacity: 0.8;
  }
}

使用CSS变量控制参数

为方便调整,可以使用CSS变量:

css制作弹跳球

:root {
  --ball-size: 50px;
  --bounce-height: 150px;
  --animation-duration: 0.6s;
}

.ball {
  width: var(--ball-size);
  height: var(--ball-size);
  animation: bounce var(--animation-duration) infinite;
}

@keyframes bounce {
  50% {
    transform: translateY(var(--bounce-height)) scale(1.1, 0.8);
  }
}

这些方法组合起来可以创建出逼真的弹跳球效果,通过调整动画时间、缓动函数和变形参数,可以获得不同的弹跳质感。

标签: css
分享给朋友:

相关文章

css制作圆形

css制作圆形

使用 border-radius 属性 通过设置 border-radius 为 50%,可以将元素变为圆形。元素的宽度和高度需相同,否则会呈现椭圆形。 .circle { widt…

css制作六边形

css制作六边形

使用CSS创建六边形的方法 通过CSS的clip-path属性可以轻松实现六边形效果。以下是一个基础示例: .hexagon { width: 100px; height: 55px;…

css制作半圆

css制作半圆

使用 border-radius 制作半圆 通过设置 border-radius 属性,可以将矩形的边角弯曲成圆弧形状。制作半圆的关键是将宽度和高度设置为 2:1 的比例,并只对两个角应用圆角。 .…

css制作网站导航

css制作网站导航

使用CSS制作网站导航的方法 水平导航栏 通过display: inline-block或flexbox布局实现水平导航栏。设置背景色、间距和悬停效果增强交互性。 .navbar { backg…

css制作

css制作

CSS 基础语法 CSS(层叠样式表)用于描述HTML元素的样式。一个基本的CSS规则由选择器和声明块组成。选择器指定要样式化的HTML元素,声明块包含一个或多个属性-值对,用花括号 {} 包裹。…

jquery css

jquery css

jQuery 操作 CSS 的方法 jQuery 提供了多种方法来操作元素的 CSS 样式,包括获取、设置、添加或移除样式。以下是常用的方法: 获取 CSS 属性值 使用 .css() 方法获取元素…