Css实现小球边界碰撞回弹

做一个小球,通过定位属性叠加动画的方式, 让小球在屏幕中进行运动,通过设置animation的alternate属性来设置回弹。最后,只需要设置两个运动的持续时间不同就能完成多方向的边界碰撞事件了。

代码示例:

复制代码
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      div {
        position: absolute;
        top: 0;
        left: 0;
        width: 100px;
        height: 100px;
        background-color: orange;
        border-radius: 50%;
        animation: w_move 2.5s linear infinite alternate,
          h_move 3.2s linear infinite alternate;
      }
      @keyframes w_move {
        to {
          left: calc(100vw - 100px);
        }
      }
 
      @keyframes h_move {
        to {
          top: calc(100vh - 100px);
        }
      }
    </style>
  </head>
  <body>
    <div></div>
  </body>
</html>
相关推荐
她是太阳,好耀眼i1 小时前
Nvm 实现vue版本切换
javascript·vue.js·ecmascript
蒲公英10011 小时前
在wps软件的word中使用js宏命令设置表格背景色
javascript·word·wps
一枚前端小能手2 小时前
📜 `<script>`脚本元素 - 从加载策略到安全性与性能的完整指南
前端·javascript
掘金安东尼2 小时前
TypeScript为何在AI时代登顶:Anders Hejlsberg 的十二年演化论
前端·javascript·面试
执携2 小时前
Vue Router (命名视图)
前端·javascript·vue.js
含若飞3 小时前
Vue 中 `watch` 与 `this.$watch` 使用指南
前端·javascript·vue.js
Python私教3 小时前
Node.js 开发环境搭建全攻略(2025版)
javascript
希冀1234 小时前
【Vue】第五篇
前端·javascript·vue.js
www_stdio5 小时前
JavaScript 中的数组:开箱即用却暗藏玄机
javascript
顾安r6 小时前
11.10 脚本算法 五子棋 「重要」
服务器·前端·javascript·游戏·flask