位置: IT常识 - 正文

大数据热点城市波动图案例【CSS3实现 + 原理分析 + 源码获取】(大数据热点话题)

编辑:rootadmin
大数据热点城市波动图案例【CSS3实现 + 原理分析 + 源码获取】 一:案例效果

       本次案例我们分析一下数据可视化页面最常见的热点图是如何实现的,其原理并不复杂,只需要用到CSS3动画属性 animation 以及 @keyframe 关键帧即可,重点是向外扩散的环如何布局比较合适,以及每个环怎么扩散何时扩散比较合适。

推荐整理分享大数据热点城市波动图案例【CSS3实现 + 原理分析 + 源码获取】(大数据热点话题),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:大数据谈论热点有,大数据热点新闻,大数据 城市,大数据热度,大数据热度,大数据热点分析,大数据热点话题,大数据的热点,内容如对您有帮助,希望把文章链接给更多的朋友!

大数据热点城市波动图案例【CSS3实现 + 原理分析 + 源码获取】(大数据热点话题)

二:源码获取

源码我已经上传到了资源里,想拿来学习引用的小伙伴直接下载即可,没有会员的可以私聊我 “大数据热点图” 免费获取,下方是源码的资源链接

大数据热点波动图,纯css3实现-Javascript文档类资源-CSDN下载通过css3动画设置的大数据热点波动图,主要利用了animation动画更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/weixin_52212950/86728456

三:原理分析

原理分析我们分为热点的布局分析与热点向外扩散的动画实现的分析

3.1 布局分析布局我们那单独的一个城市分析,例如地图中北京的 ,其由一个类名为city1的最外层盒子来添加定位以定到目标城市位置,其不设置宽高,大小完全由中心点撑起(即第二个类名为center的盒子) ,波纹其实是有三个圈圈组成的,最开始是完全重合的,用中心小算法来保证其永远是围绕center来扩散的。 <div class="city1"> <div class="center1"></div> <p class="bj">Beijing</p> <div class="bw1"></div> <div class="bw2"></div> <div class="bw3"></div> </div>波纹的样式添加我们采用了属性选择器 .city1 div[class^="bw"],即选择父类city1里面类名以bw开头的所有子div标签 .city1{ position: absolute; top: 370px; right: 403px; color: aliceblue; } .center1{ width: 5px; height: 5px; background-color: rgb(255, 255, 255); box-shadow: 0 0 12px 2px #fff; border-radius: 50%; } .city1 div[class^="bw"]{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 5px; height: 5px; box-shadow: 0 0 7px #fff; border-radius: 50%; animation: scla 3s linear infinite; } .map .city1 div.bw2{ animation-delay: 1s; } .map .city1 div.bw3{ animation-delay: 2s; }3.2 动画分析本次添加的关键帧为:0%的时候波纹是完全不透明的,50%的时候宽高均变大为105px,即圈圈在总动画时间50%的时候要从宽高5px扩散到宽高105px,然后变为半透明状态。再下一个是100%的时候,扩散到宽高150px,并变成完全不透明。要给波纹添加属性:animation: scla 3s linear infinite;  含义为3s做完动画,匀速,并且无限循环为了呈现出波纹一个接一个往外扩散而不是一起扩散,需要给第一个圈圈直接开始扩散,第二个圈圈第三个圈圈设置不同的 animation-delay 动画延迟,第二个设置为1s,第二个设置为2s,这样就可以呈现出一个接一个往外扩散了 /* @keyframes关键帧动画 */ @keyframes scla{ 0% { opacity: 1; } 50% { width: 105px; height: 105px; opacity: 0.5; } 100% { width: 150px; height: 150px; opacity: 0; } } .city3 div[class^="bw"]{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 5px; height: 5px; box-shadow: 0 0 7px #fff; border-radius: 50%; animation: scla 3s linear infinite; } .map .city3 div.bw2{ animation-delay: 1s; } .map .city3 div.bw3{ animation-delay: 2s; }四:主要代码<style> *{ margin: 0; padding: 0; box-sizing: border-box; } body{ background-color: rgb(45, 45, 45); } .map{ position: relative; width: 1400px; height: 830px; background-image: url(./img/QX3OPNW5qY.png); background-repeat: no-repeat; background-size: 100%; margin: 0 auto; } .bj{ position: absolute; top: 15px; left: 10px; font-size: 10px; } .Gambia{ position: absolute; top: 15px; left: 10px; font-size: 10px; color:rgb(255, 153, 153) } .Island{ position: absolute; top: 15px; left: 10px; font-size: 10px; } /* 城市1 */ .city1{ position: absolute; top: 370px; right: 403px; color: aliceblue; } .center1{ width: 5px; height: 5px; background-color: rgb(255, 255, 255); box-shadow: 0 0 12px 2px #fff; border-radius: 50%; } .city1 div[class^="bw"]{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 5px; height: 5px; box-shadow: 0 0 7px #fff; border-radius: 50%; animation: scla 3s linear infinite; } .map .city1 div.bw2{ animation-delay: 1s; } .map .city1 div.bw3{ animation-delay: 2s; } /* 城市2 */ .city2{ position: absolute; top: 500px; right: 703px; color: aliceblue; } .center2{ width: 5px; height: 5px; background-color: rgb(255, 255, 255); box-shadow: 0 0 12px 2px #fff; border-radius: 50%; } .city2 div[class^="bw"]{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 5px; height: 5px; box-shadow: 0 0 7px rgb(255, 149, 149); border-radius: 50%; animation: scla1 3s linear infinite; } .map .city2 div.bw2{ animation-delay: 0.75s; } .map .city2 div.bw3{ animation-delay: 1.5s; } .map .city2 div.bw4{ animation-delay: 2.25s; } /* 城市3 */ .city3{ position: absolute; top: 200px; right: 1003px; color: aliceblue; } .center3{ width: 5px; height: 5px; background-color: rgb(255, 255, 255); box-shadow: 0 0 12px 2px #fff; border-radius: 50%; } /* 属性选择器 正则表达式筛选bw开头类名 */ .city3 div[class^="bw"]{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 5px; height: 5px; box-shadow: 0 0 7px #fff; border-radius: 50%; animation: scla 3s linear infinite; } .map .city3 div.bw2{ animation-delay: 1s; } .map .city3 div.bw3{ animation-delay: 2s; } /* @keyframes关键帧动画 */ @keyframes scla{ 0% { opacity: 1; } 50% { width: 105px; height: 105px; opacity: 0.5; } 100% { width: 150px; height: 150px; opacity: 0; } } @keyframes scla1{ 0% { opacity: 1; } 50% { width: 285px; height: 285px; opacity: 0.5; } 100% { width: 330px; height: 330px; opacity: 0; } } </style></head><body> <div class="map"> <div class="city1"> <div class="center1"></div> <p class="bj">Beijing</p> <div class="bw1"></div> <div class="bw2"></div> <div class="bw3"></div> </div> <div class="city2"> <div class="center2"></div> <p class="Gambia">Gambia</p> <div class="bw1"></div> <div class="bw2"></div> <div class="bw3"></div> <div class="bw4"></div> </div> <div class="city3"> <div class="center3"></div> <p class="Island">Island</p> <div class="bw1"></div> <div class="bw2"></div> <div class="bw3"></div> </div> </div></body>
本文链接地址:https://www.jiuchutong.com/zhishi/299556.html 转载请保留说明!

上一篇:ansible命令 运维自动化工具(基于ansible的运维平台)

下一篇:【ChatGPT】ChatGPT 能否取代程序员?(chatb)

  • 淘宝显示用户信息开关在哪里(淘宝显示用户信用双零什么意思)

    淘宝显示用户信息开关在哪里(淘宝显示用户信用双零什么意思)

  • ps4光盘退出键在哪(ps4主机怎么退出光盘)

    ps4光盘退出键在哪(ps4主机怎么退出光盘)

  • 手机上淘宝怎么寄快递上门取件(手机上淘宝怎么退保证金)

    手机上淘宝怎么寄快递上门取件(手机上淘宝怎么退保证金)

  • 优酷怎么开弹幕(优酷怎么开弹幕苹果平板)

    优酷怎么开弹幕(优酷怎么开弹幕苹果平板)

  • 微博如何隐藏超话不让别人看到(微博如何隐藏超话)

    微博如何隐藏超话不让别人看到(微博如何隐藏超话)

  • 微信怎么看用了几年了(微信怎么看用了多少头像)

    微信怎么看用了几年了(微信怎么看用了多少头像)

  • 屏幕一半亮一半暗(屏幕一半亮一半暗苹果手机)

    屏幕一半亮一半暗(屏幕一半亮一半暗苹果手机)

  • .c是什么文件(csv是什么文件)

    .c是什么文件(csv是什么文件)

  • 联想小新14第一次要充电多久(联想小新14第一次要充电多久知乎)

    联想小新14第一次要充电多久(联想小新14第一次要充电多久知乎)

  • 魅族发布会时间(魅族发布会最多的一年)

    魅族发布会时间(魅族发布会最多的一年)

  • 淘宝可以货到付款了吗(淘宝可以货到付款吗?)

    淘宝可以货到付款了吗(淘宝可以货到付款吗?)

  • 频分复用和时分复用的区别(频分复用和时分复用的目的)

    频分复用和时分复用的区别(频分复用和时分复用的目的)

  • 荣耀是华为的吗(荣耀是华为的品牌吗)

    荣耀是华为的吗(荣耀是华为的品牌吗)

  • 华为nova7pro多少赫兹(华为nova7pro多少w快充)

    华为nova7pro多少赫兹(华为nova7pro多少w快充)

  • 苹果Id与itunes账号不一致(苹果id与itunes账号不一致无法更新)

    苹果Id与itunes账号不一致(苹果id与itunes账号不一致无法更新)

  • 苹果11如何设置指纹解锁(苹果11如何设置动态锁屏壁纸)

    苹果11如何设置指纹解锁(苹果11如何设置动态锁屏壁纸)

  • 华为nova新机第一次怎么充电(nova 新机)

    华为nova新机第一次怎么充电(nova 新机)

  • 耳机降噪不降噪区别(耳机降噪不降噪哪个好)

    耳机降噪不降噪区别(耳机降噪不降噪哪个好)

  • 硬盘容量hdd是什么意思(硬盘hdd是什么意思)

    硬盘容量hdd是什么意思(硬盘hdd是什么意思)

  • 笔记本电脑加号怎么打(笔记本电脑加号怎么按)

    笔记本电脑加号怎么打(笔记本电脑加号怎么按)

  • 荣耀20青春版怎么定位找回(荣耀20青春版怎么样)

    荣耀20青春版怎么定位找回(荣耀20青春版怎么样)

  • 音乐怎么收藏歌曲(音乐怎样收藏)

    音乐怎么收藏歌曲(音乐怎样收藏)

  • 显卡驱动安装失败咋办(显卡驱动安装失败如何解决)

    显卡驱动安装失败咋办(显卡驱动安装失败如何解决)

  • 苹果11第一次充电要充多久(苹果11第一次充电要注意什么)

    苹果11第一次充电要充多久(苹果11第一次充电要注意什么)

  • 微信封面只能赞一次吗(微信封面有的可以点赞有时不可以)

    微信封面只能赞一次吗(微信封面有的可以点赞有时不可以)

  • 操作系统知识点

    操作系统知识点

  • 米聊是什么(米聊是什么公司)

    米聊是什么(米聊是什么公司)

  • iphone自带浏览器翻译(iphone自带浏览器无痕浏览)

    iphone自带浏览器翻译(iphone自带浏览器无痕浏览)

  • ChatGPT在编程中的应用(编程中char什么意思)

    ChatGPT在编程中的应用(编程中char什么意思)

  • 小规模纳税人月收入多少免征增值税
  • 什么是企业增值税和所得税
  • 税率如何计算公式
  • 公司购入的财务怎么做账
  • 库存商品领用会计分录
  • 公司银行未开户税务也没开需要做工商年报吗
  • 劳务工资入什么科目
  • 对公账户是不是实时到账
  • 发票认证当月必须抵扣吗
  • 企业开出的普票和专票对税额有影响吗
  • ATM可以存款到对公账户吗?
  • 在计算缴纳房产税时,不计入房产原值的是
  • 资产重组的税务筹划
  • 应收账款平均数
  • 外购商品赠送客户怎么做账
  • 原材料什么时候结转成本
  • 属于制造费用的有
  • 重复做了以前做过的梦
  • 软件开发的服务内容方式要求
  • 住宿发票的税率0
  • 年终奖金怎么发放
  • 建筑企业差额征税账务处理
  • 审计费用收取标准的2020
  • 税务局收到企业发票
  • 出租包装物和出借包装物的摊销额
  • 怎样找此电脑
  • win10字体有些模糊
  • mac系统自带软件有哪些
  • 双网卡冲突会发生什么现象
  • php制作一个表单
  • php哈希表
  • 在XP中,为什么"网络连接"图标消失?
  • php框架运行机制
  • 小企业法人怎么交社保
  • 金税盘锁死会电子发票也开不了吗
  • 固定资产备抵科目怎么填
  • 93.transformer、多头注意力以及代码实现
  • spring boot 2.3.0
  • 以股权抵债的会计分录
  • 增值税贷方余额是负数怎么办
  • discuz设置门户
  • 电子发票可以更改为纸质发票么
  • 安装sql2005提示sql server服务无法启动
  • 期权权利金的计算公式
  • 采用公允价值模式计量的投资性房地产处置
  • 工程分包需要注意什么
  • 期权费如何入账
  • 发票开错抬头做红字发票的账务处理是?
  • 材料退库的流程
  • 销售产品收到现款120元是什么制
  • 企业中征码怎么生成
  • 买车给了上牌费去车管所还用给钱吗
  • 汇率的差额如何处理
  • 会计出账入账怎么做
  • 公司买支票需要带什么资料
  • sql server中千万数量级分页存储过程代码
  • unix系统命令大全
  • win8怎么样的
  • mac如何打印文件
  • excel打开csv文件数据有丢失
  • linux扫描硬件
  • Windows 8 Consumer Preview 中的新热键介绍
  • node.js项目结构
  • 人应该掌握的基本知识
  • 浅析js动态创建方法
  • java中遍历数组的方法
  • 简要说明javascript的作用
  • 安卓的通用在哪里
  • unity平面透明
  • Javascript Object.extend
  • jquery操作表单
  • 淄博市税务局投诉电话
  • 深圳市国家税务局赵雨婷
  • 北京市社会团体
  • 2024年深圳房价
  • 花卉种植税收优惠政策案例
  • 螺丝钉的税率
  • 属于资源税类的税种有哪些
  • 我国近十年财政支出结构占比
  • 土地税是怎么缴纳按什么缴纳
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设