iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >怎么使用CSS和D3实现黑白交叠的动画效果
  • 473
分享到

怎么使用CSS和D3实现黑白交叠的动画效果

2024-04-02 19:04:59 473人浏览 薄情痞子
摘要

这篇文章将为大家详细讲解有关怎么使用CSS和D3实现黑白交叠的动画效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   代码解读   定义dom,容器中包含3个子元

这篇文章将为大家详细讲解有关怎么使用CSS和D3实现黑白交叠的动画效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

  代码解读

  定义dom,容器中包含3个子元素,每个子元素代表一个圆:

  <divclass="circles">

  <span></span>

  <span></span>

  <span></span>

  </div>

  居中显示:

  body{

  margin:0;

  height:100vh;

  display:flex;

  align-items:center;

  justify-content:center;

  background-color:black;

  }

  定义容器尺寸:

  .circles{

  width:60vmin;

  height:60vmin;

  }

  画出容器中的1个圆:

  .circles{

  position:relative;

  }

  .circlesspan{

  position:absolute;

  box-sizing:border-box;

  width:50%;

  height:50%;

  background-color:white;

  border-radius:50%;

  left:25%;

  }

  定义变量,画出多个圆,每个圆围绕着第1个圆的底部中点旋转,围成一个更大的圆形:

  .circles{

  --particles:3;

  }

  .circlesspan{

  transfORM-origin:bottomcenter;

  --deg:calc(360deg/var(--particles)*(var(--n)-1));

  transform:rotate(var(--deg));

  }

  .circlesspan:nth-child(1){

  --n:1;

  }

  .circlesspan:nth-child(2){

  --n:2;

  }

  .circlesspan:nth-child(3){

  --n:3;

  }

  为子元素增加动画效果:

  .circlesspan{

  animation:rotating5sease-in-outinfinite;

  }

  @keyframesrotating{

  0%{

  transform:rotate(0);

  }

  50%{

  transform:rotate(var(--deg))translateY(0);

  }

  100%{

  transform:rotate(var(--deg))translateY(100%)scale(2);

  }

  }

  设置子元素混色模式,使子元素间交叠的部分显示成黑色:

  .circlesspan{

  mix-blend-mode:difference;

  }

  为容器增加动画效果,抵销子元素放大,使动画流畅衔接:

  .circles{

  animation:zoom5slinearinfinite;

  }

  @keyframeszoom{

  to{

  transform:scale(0.5)translateY(-50%);

  }

  }

  接下来用d3批量处理dom元素和css变量。

  引入d3库:

  <scriptsrc="https://d3js.org/d3.v5.min.js"></script>

  用d3为表示圆数量的变量赋值:

  constCOUNT_OF_PARTICLES=30;

  d3.select('.circles')

  .style('--particles',COUNT_OF_PARTICLES)

  用d3生成dom元素:

  d3.select('.circles')

  .style('--particles',COUNT_OF_PARTICLES)

  .selectAll('span')

  .data(d3.range(COUNT_OF_PARTICLES))

  .enter()

  .append('span');

  用d3为表示子元素下标的变量赋值:

  d3.select('.circles')

  .style('--particles',COUNT_OF_PARTICLES)

  .selectAll('span')

  .data(d3.range(COUNT_OF_PARTICLES))

  .enter()

  .append('span')

  .style('--n',(d)=>d+1);

  删除掉html文件中的相关dom元素和css文件中相关的css变量。

  最后,把圆的数量调整为30个:

  constCOUNT_OF_PARTICLES=30;

  大功告成!


怎么使用CSS和D3实现黑白交叠的动画效果怎么使用CSS和D3实现黑白交叠的动画效果

关于“怎么使用CSS和D3实现黑白交叠的动画效果”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: 怎么使用CSS和D3实现黑白交叠的动画效果

本文链接: https://www.lsjlt.com/news/89136.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么使用CSS和D3实现黑白交叠的动画效果
    这篇文章将为大家详细讲解有关怎么使用CSS和D3实现黑白交叠的动画效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   代码解读   定义dom,容器中包含3个子元...
    99+
    2022-10-19
  • 怎么用CSS和D3实现小鱼游动的交互动画
    小编给大家分享一下怎么用CSS和D3实现小鱼游动的交互动画,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!   代码解读   定义dom,容器中包含的子元素分别代表鱼的身体、眼睛、背鳍和...
    99+
    2022-10-19
  • CSS和D3怎么实现用文字组成的心形动画效果
    小编给大家分享一下CSS和D3怎么实现用文字组成的心形动画效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   代码解读 ...
    99+
    2022-10-19
  • 怎么使用CSS和D3实现一个舞动的画面
    小编给大家分享一下怎么使用CSS和D3实现一个舞动的画面,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   代码解读   定...
    99+
    2022-10-19
  • 怎么用纯CSS实现一只移动的小白兔动画效果
    这篇文章主要介绍怎么用纯CSS实现一只移动的小白兔动画效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!   代码解读   定义dom,页面中包含2个元素,分别代表兔子和云朵: ...
    99+
    2022-10-19
  • 怎么利用css实现波纹动画效果
    这篇文章给大家分享的是有关怎么利用css实现波纹动画效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。css是什么意思css是一种用来表现HTML或XML等文件样式的计算机语言,主要是用来设计网页的样式,使网页更...
    99+
    2023-06-08
  • 怎么用CSS实现眼冒金星的动画效果
    这篇文章将为大家详细讲解有关怎么用CSS实现眼冒金星的动画效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。     代码解读   &n...
    99+
    2022-10-19
  • 怎么用css实现水纹扩散的动画效果
    小编给大家分享一下怎么用css实现水纹扩散的动画效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   <divclas...
    99+
    2022-10-19
  • 怎么使用vue实现动画效果
    这篇文章主要介绍了怎么使用vue实现动画效果的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用vue实现动画效果文章都会有所收获,下面我们一起来看看吧。Vue封装的过度与动画1.作用在插入,更新,移除DOM...
    99+
    2023-07-05
  • 怎么使用js实现动画效果
    这篇文章主要介绍“怎么使用js实现动画效果”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用js实现动画效果”文章能帮助大家解决问题。1.动画原理      &nb...
    99+
    2023-07-05
  • 怎么用纯CSS实现Windows启动界面的动画效果
    这篇文章主要介绍了怎么用纯CSS实现Windows启动界面的动画效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。   代码解读   定...
    99+
    2022-10-19
  • 怎么使用纯css代码实现赛车的loader动画效果
    这篇文章主要介绍怎么使用纯css代码实现赛车的loader动画效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!   代码解读   定义dom,容器中包含1个.car元素,它的2...
    99+
    2022-10-19
  • 怎么样使用纯CSS代码实现冰棍的动画效果
    小编给大家分享一下怎么样使用纯CSS代码实现冰棍的动画效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   代码解读   ...
    99+
    2022-10-19
  • 怎么用纯CSS实现条纹错觉的动画效果
    小编给大家分享一下怎么用纯CSS实现条纹错觉的动画效果,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!   代码解读   定义dom,容器中包含2个元素,分别代表2条轨道:   <...
    99+
    2022-10-19
  • 如何使用CSS实现outline切换的动画效果
    这篇文章主要介绍“如何使用CSS实现outline切换的动画效果”,在日常操作中,相信很多人在如何使用CSS实现outline切换的动画效果问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望...
    99+
    2022-10-19
  • 怎么使用纯CSS代码实现一个沙漏的动画效果
    这篇文章主要为大家展示了“怎么使用纯CSS代码实现一个沙漏的动画效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“怎么使用纯CSS代码实现一个沙漏的动画效果”这...
    99+
    2022-10-19
  • 怎么使用纯CSS代码实现文字断开的动画效果
    这篇文章将为大家详细讲解有关怎么使用纯CSS代码实现文字断开的动画效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   代码解读   定义dom,只有一个元素,元素...
    99+
    2022-10-19
  • CSS怎么实现弹簧效果的旋转加载动画
    这篇文章主要讲解了“CSS怎么实现弹簧效果的旋转加载动画”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS怎么实现弹簧效果的旋转加载动画”吧!先看看效果,...
    99+
    2022-10-19
  • 怎么用纯css3实现黑色炫酷开关按钮动画效果
    本文小编为大家详细介绍“怎么用纯css3实现黑色炫酷开关按钮动画效果”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么用纯css3实现黑色炫酷开关按钮动画效果”文章能帮助大家解决疑惑,下面跟着小编的思路慢...
    99+
    2022-10-19
  • 如何使用CSS实现元素的边框动画效果
    如何使用CSS实现元素的边框动画效果导语:在网页设计中,为了增加用户的视觉体验和页面的吸引力,常常会使用一些动画效果来使页面元素更加生动和有趣。其中,边框动画是一种很常见的效果,它可以使元素边框呈现出变化、闪烁或者流动的动态效果。本文将介绍...
    99+
    2023-11-21
    动画 CSS 边框
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作