900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > CSS3如何实现流星雨效果?(code)

CSS3如何实现流星雨效果?(code)

时间:2024-02-07 07:49:23

相关推荐

CSS3如何实现流星雨效果?(code)

web前端|css教程

CSS3,流星雨

web前端-css教程

本篇文章给大家通过代码示例介绍一下使用CSS3如何实现流星雨效果

java app源码下载,ubuntu默认下载路径,前台怎样部署到tomcat,爬虫水果游戏,php网页首页是什么,seo技能推广lzw

微电商cms系统源码下载,ubuntu双系统自动,网络爬虫的种子,Php gluster,妇产科seolzw

【推荐教学:CSS视频教学】

翎风引擎源码,vscode 代码版本管理,新机装机ubuntu,导入项选择tomcat,爬虫下图,php数组最后一个key,微信seo是什么,众筹源码网站,tpshop web端模板lzw

说明:正文只讲述单个流星雨的实现方式,多个的效果只需要对单个的动画起始点、宽度稍加修改即可,具体示例见文末 github 地址。

难度系数

☆☆☆☆☆

效果图

思路

流星雨的实现分为三部分:

(1)用 border 属性实现直角三角形。三角形的实现可以参考 CSS绘制三角形

(2)给直角三角形添加圆形效果,弱化直角形状的棱角

(3)添加动画效果,让直角三角形动起来

HTML

解析:

html 添加一个动画容器即可

CSS

.shooting-star { margin: 30px; display: block; width: 0; border-radius: 2px; border-top-width: 1px; border-top-style: solid; border-top-color: transparent; border-left-width: 230px; border-left-style: solid; border-left-color: white; border-right-width: 230px; border-right-style: solid; border-right-color: transparent; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: white;}.animation { animation: fly 3s infinite;}@keyframes fly { from { margin-left: 900px; border-left-width: 130px; border-right-width: 130px; } to { margin-left: -900px; border-left-width: 360px; border-right-width: 360px; }}

解析:

直角三角形直角三角形的实现,首先确定直角的方位,本例直角方位为左下角,因此设置左边框和下边框为有颜色的,右边框和上边框为透明色流星类似一条线的形状,所以直角三角形高度很小,宽度很大。因此此处设置左右边框宽度值很大,上下边框宽度值很小类似 span 这样 display 默认属性值不为 block 的元素,需要设置 display 属性为 block圆形效果通过 border-radius 设置圆形 border 即可,border-radius 的值与直角三角形高度相同即可(注意高度值应为 border-top-width 和 border-bottom-width 数值之和)动画效果通过 margin-left 设置动画初始和结束位置通过改变 border-*-width 的值达到流星长度变化的效果动画时长决定流星通过界面的时间动画次数设置为无限次

知识点

CSS 实现三角形圆角 borderanimation 添加动画效果@keyframes 自定义动画

Gitbub 源码:

/nanzhangren/CSS_skills/blob/master/shooting_star/shooting_star.html

编程入门!!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。