&…">
当前位置:首页 > 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制作下拉菜单

纯CSS下拉菜单实现方法 通过CSS的:hover伪类和display属性可以实现纯CSS下拉菜单,无需JavaScript。以下是具体实现方式: HTML结构示例: <nav class=…

css制作春季踏青

css制作春季踏青

使用CSS制作春季踏青主题效果 背景设计 通过渐变背景模拟春日天空,使用柔和的色调如浅蓝、淡绿和粉色。可以添加云朵或小鸟的剪影作为装饰元素。 body { background: linear-…

css制作炫酷按钮

css制作炫酷按钮

渐变背景按钮 使用CSS的linear-gradient属性创建渐变背景效果,结合阴影和过渡动画增强视觉冲击力。按钮悬停时通过改变渐变角度或颜色实现动态效果。 .gradient-btn { b…

咖啡店css制作

咖啡店css制作

咖啡店网页CSS设计要点 布局与配色 咖啡店网页通常采用温暖自然的配色方案,如棕色、米色、浅绿色等大地色系。主色调可选择咖啡色(#6F4E37)作为品牌色,搭配奶油色(#FFF8E8)作为背景。使用C…

css下拉箭头的制作

css下拉箭头的制作

使用伪元素制作下拉箭头 通过CSS的::after或::before伪元素结合边框属性创建箭头。设置元素的position: relative,伪元素使用绝对定位调整位置。 .dropdow…

css日历制作

css日历制作

基础日历结构 使用HTML创建日历的基本框架,通常包含表格元素。月份、星期几和日期通过<table>标签组织,表头显示星期几,表格主体填充日期数字。 <div class="cal…