CSS实现运动的小球

简介: CSS实现运动的小球

效果图

image.png

页面结构

页面结构很简单,我们这里只需要将#app盒子作为平台,然后再用.ball写出小球的样式在对它添加上弹跳的效果就可以了

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

初始样式

清除所有元素的默认内外边距,将#app盒子占满全屏,以便于小球进行弹跳

* {
            margin: 0;
            padding: 0;
        }
        #app {
            width: 100vw;
            height: 100vh;
            background: #000;
        }

小球实现

我们设置好宽高,再用css圆角属性将小球设置为圆形,小球的仿真效果我们通过css背景radial-gradient属性进行实现,最后给上固定定位,让小球可以全屏进行跳跃,我们到时候通过控制top和left值让小球移动位置

.ball {
            position: fixed;
            width: 50px;
            height: 50px;
            border-radius: 50%;
            background: radial-gradient(circle farthest-side at center, white, grey);
        }

小球反弹跳跃实现

小球的反弹跳跃效果我们这里使用CSS动画进行实现,我们这里需要声明两个动画,一个是控制小球的X轴移动,一个是控制小球Y轴移动,我们将小球的top值和left值动画起始值设置为0,动画终止值我们这里需要套入公式,小球的top值为:(页面的高度)-(小球的高度),小球的left值为:(页面的宽度)-(小球的宽度),然后使用css的calc属性套入公式进行计算得出小球移动的终止值,最后给小球添加上这两个动画,设置好动画执行时间并开启无限循环和轮流反向播放

.ball {
            animation: beatX 3s linear infinite alternate,
                beatY 3.5s linear infinite alternate;
        }
@keyframes beatX {
            from {
                left: 0;
            }
            to {
                left: calc(100vw - 50px);
            }
        }
        @keyframes beatY {
            from {
                top: 0;
            }
            to {
                top: calc(100vh - 50px);
            }
        }

代码我放到码上掘金上了,感兴趣的大家可以看一下!

image.png

相关文章
|
前端开发
CSS跳动的小球
CSS跳动的小球
132 0
|
前端开发
html_css模拟端午赛龙舟运动
html_css模拟端午赛龙舟运动
304 1
|
前端开发
css_animation运动的贝塞尔曲线
css_animation运动的贝塞尔曲线
202 0
|
前端开发 JavaScript
使用纯html与css实现跳动小球加载动画
跳动小球加载动画 在网页开发中,加载动画是必不可缺的一个设计;因为在一些资源加载的时候需要让用户等待一段时间,为了使用户有更好的交互体验,一个使人身心愉悦的加载动画变必不可少。 今天为大家带来的就是一个小求跳动加载动画
|
前端开发 JavaScript
使用CSS实现 图片帧动画 与 曲线运动
使用CSS实现 图片帧动画 与 曲线运动
1055 0
使用CSS实现 图片帧动画 与 曲线运动
|
前端开发 JavaScript
使用html+css+JavaScript制作抛物线小球
使用html+css+JavaScript制作抛物线小球
489 0
|
前端开发
如何用纯 CSS 创作小球变矩形背景的按钮悬停效果
效果预览 在线演示 按下右侧的“点击预览”按钮可以在当前页面预览,点击链接可以全屏预览。 https://codepen.io/comehope/pen/yxbEzJ 可交互视频 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码。
1358 0
|
前端开发 Web App开发 JavaScript
用纯 CSS 创作一个小球反弹的动画
效果预览 在线演示 按下右侧的“点击预览”按钮可以在当前页面预览,点击链接可以全屏预览。 https://codepen.io/comehope/pen/OwWROO 可交互视频 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码。
1235 0
|
前端开发 容器 Web App开发
如何用纯 CSS 创作一个小球上台阶的动画
效果预览 在线演示按下右侧的“点击预览”按钮可以在当前页面预览,点击链接可以全屏预览。 https://codepen.io/comehope/pen/PBGJwL 可交互视频 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码。
1205 0

热门文章

最新文章

  • 1
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
    739
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
    606
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
    605
  • 4
    (CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
    376
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
    689
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
    878
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
    1753
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
    417
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
    1444
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
    734