当前位置: 首页 > news >正文

纯CSS的华为充电动画,它来了

📢 鸿蒙专栏:想学鸿蒙的,冲

📢 C语言专栏:想学C语言的,冲

📢 VUE专栏:想学VUE的,冲这里

📢 Krpano专栏:想学Krpano的,冲

🔔 上述专栏,都在不定期持续更新中!!!!!!!!!!!!!

文章目录

✨ 关键点

✨ 效果演示

✨ 分析逻辑

 ✨ 下面附上完整代码


 

✨ 关键点

        拆解一下知识点,最主要的其实是用到了 filter: contrast() 以及 filter: blur() 这两个滤镜,可以很好的实现这种融合效果。

单独将两个滤镜拿出来,它们的作用分别是:

  • filter: blur() 给图像设置高斯模糊效果。
  • filter: contrast() 调整图像的对比度。

但是,当他们“合体”的时候,产生了奇妙的融合现象。

先来看一个简单的例子:

        仔细看两圆相交的过程,在边与边接触的时候,会产生一种边界融合的效果,通过对比度滤镜把高斯模糊的模糊边缘给干掉,利用高斯模糊实现融合效果。 

✨ 效果演示

✨ 分析逻辑

1、首先我们注意分析,这个效果到底需要怎样的结构去实现

        为了更好的看效果  我把所有的元素做了颜色区分,顶部其实就是两个圆利用border-radius去设置了圆角边框的弧度,下面呢?

        底部也是一个大圆,其中有很多很多个小圆,因为小圆要向上移动,实现效果,主要的代码如下:

@for $i from 0 through 15 { li:nth-child(#{$i}) {$width: 15 + random(15) + px;left: 15 + random(70) + px;top: 50%;transform: translate(-50%, -50%);width: $width;height: $width;animation: moveToTop #{random(6) + 3}s ease-in-out -#{random(5000)/1000}s infinite;}
}
@keyframes moveToTop {90% {opacity: 1;}100% {opacity: .1;transform: translate(-50%, -180px);}
}

注意:

  1. CSS本身不支持@for循环,这是一种Sass/SCSS的语法

 ✨ 下面附上完整代码

HTML:

<div class="g-container"><div class="g-number">98.7%</div><div class="g-contrast"><div class="g-circle"></div><ul class="g-bubbles"><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul></div>
</div>

SCSS

html,
body {width: 100%;height: 100%;display: flex;background: #000;overflow: hidden;
}
.g-number {position: absolute;width: 300px;top: 27%;text-align: center;font-size: 32px;z-index: 10;color: #fff;
}.g-container {position: relative;width: 300px;height: 400px;margin: auto;
}.g-contrast {filter: contrast(10) hue-rotate(0);width: 300px;height: 400px;background-color: #000;overflow: hidden;animation: hueRotate 10s infinite linear;
}.g-circle {position: relative;width: 300px;height: 300px;box-sizing: border-box;filter: blur(8px);&::after {content: "";position: absolute;top: 40%;left: 50%;transform: translate(-50%, -50%) rotate(0);width: 200px;height: 200px;background-color: #00ff6f;border-radius: 42% 38% 62% 49% / 45%;animation: rotate 10s infinite linear;}&::before {content: "";position: absolute;width: 176px;height: 176px;top: 40%;left: 50%;transform: translate(-50%, -50%);border-radius: 50%;background-color: #000;z-index: 10;}
}.g-bubbles {position: absolute;left: 50%;bottom: 0;width: 100px;height: 40px;transform: translate(-50%, 0);border-radius: 100px 100px 0 0;background-color: #00ff6f;filter: blur(5px);
}li {position: absolute;border-radius: 50%;background: #00ff6f;
}@for $i from 0 through 15 { li:nth-child(#{$i}) {$width: 15 + random(15) + px;left: 15 + random(70) + px;top: 50%;transform: translate(-50%, -50%);width: $width;height: $width;animation: moveToTop #{random(6) + 3}s ease-in-out -#{random(5000)/1000}s infinite;}
}@keyframes rotate {50% {border-radius: 45% / 42% 38% 58% 49%;}100% {transform: translate(-50%, -50%) rotate(720deg);}
}@keyframes moveToTop {90% {opacity: 1;}100% {opacity: .1;transform: translate(-50%, -180px);}
}@keyframes hueRotate {100% {filter: contrast(15) hue-rotate(360deg);}
}

注意注意注意:一定要用SCSS!!!!!!!!!!!!

注意注意注意:一定要用SCSS!!!!!!!!!!!!

注意注意注意:一定要用SCSS!!!!!!!!!!!!

我们改日再会

相关文章:

纯CSS的华为充电动画,它来了

&#x1f4e2; 鸿蒙专栏&#xff1a;想学鸿蒙的&#xff0c;冲 &#x1f4e2; C语言专栏&#xff1a;想学C语言的&#xff0c;冲 &#x1f4e2; VUE专栏&#xff1a;想学VUE的&#xff0c;冲这里 &#x1f4e2; Krpano专栏&#xff1a;想学Krpano的&#xff0c;冲 &#x1f514…...

在架构设计中,前后端分离有什么好处?

前后端分离是一种架构设计模式&#xff0c;将前端和后端的开发分别独立进行&#xff0c;它带来了多方面的好处&#xff1a; 1、独立开发和维护&#xff1a; 前后端分离允许前端和后端开发团队独立进行工作。这意味着两个团队可以并行开发&#xff0c;提高了整体的开发效率。前…...

C语言中的结构体和联合体:异同及应用

文章目录 C语言中的结构体和联合体&#xff1a;异同及应用1. 结构体&#xff08;Struct&#xff09;的概述代码示例&#xff1a; 2. 联合体&#xff08;Union&#xff09;的概述代码示例&#xff1a; 3. 结构体与联合体的异同点相同点&#xff1a;不同点&#xff1a;代码说明 结…...

文件夹共享(普通共享和高级共享的区别)防火墙设置(包括了jdk安装和Tomcat)

文章目录 一、共享文件1.1为什么需要配置文件夹共享功能&#xff1f;1.2配置文件共享功能1.3高级共享和普通共享的区别&#xff1a; 二、防火墙设置2.1先要在虚拟机上安装JDK和Tomcat供外部访问。2.2设置防火墙&#xff1a; 一、共享文件 1.1为什么需要配置文件夹共享功能&…...

❀My排序算法学习之冒泡排序❀

目录 冒泡排序(Bubble Sort):) 一、定义 二、算法原理 三、算法分析 时间复杂度 算法稳定性 算法描述 C语言 C++ 算法比较 插入排序 选择排序 快速排序 归并排序 冒泡排序(Bubble Sort):) 一、定义 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单…...

服务器数据恢复-raid6离线磁盘强制上线后分区打不开的数据恢复案例

服务器数据恢复环境&#xff1a; 服务器上有一组由12块硬盘组建的raid6磁盘阵列&#xff0c;raid6阵列上层有一个lun&#xff0c;映射到WINDOWS系统上使用&#xff0c;WINDOWS系统划分了一个GPT分区。 服务器故障&分析&#xff1a; 服务器在运行过程中突然无法访问。对服务…...

Zookeeper在分布式命名服务中的实践

Java学习面试指南&#xff1a;https://javaxiaobear.cn 命名服务是为系统中的资源提供标识能力。ZooKeeper的命名服务主要是利用ZooKeeper节点的树形分层结构和子节点的顺序维护能力&#xff0c;来为分布式系统中的资源命名。 哪些应用场景需要用到分布式命名服务呢&#xff1…...

说说 Spring Boot 实现接口幂等性有哪几种方案?

一、什么是幂等性 幂等是一个数学与计算机学概念&#xff0c;在数学中某一元运算为幂等时&#xff0c;其作用在任一元素两次后会和其作用一次的结果相同。 在计算机中编程中&#xff0c;一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数或幂等…...

Dash中的callback的使用 多input 6

代码说明 import plotly.express as pxmport plotly.express as px用于导入plotly.express模块并给它起一个别名px。这样在后续的代码中&#xff0c;你可以使用px来代替plotly.express&#xff0c;使代码更加简洁。 plotly.express是Plotly的一个子模块&#xff0c;用于快速创…...

平方矩阵()

平方矩阵1 平方矩阵2 曼哈顿距离 #include<iostream> #include<algorithm> #include<cstdio> #include<cstring>using namespace std;const int N 110;int n; int a[N][N];int main() {while(cin >> n, n){for (int i 0; i < n; i )fo…...

git基本命令

1、安装 介绍 安装 配置 2、git基本命令 2.1 基本操作 #1、查看空目录的git状态 $ git status fatal: not a git repository (or any of the parent directories): .git#2、初始化本地仓库&#xff1a;创建一个git的目录管理当前项目的所有文件版本 $ git init Initializ…...

GPU性能实时监测的实用工具

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…...

概率论中的 50 个具有挑战性的问题 [第 6 部分]:Chuck-a-Luck

一、说明 我最近对与概率有关的问题产生了兴趣。我偶然读到了弗雷德里克莫斯特勒&#xff08;Frederick Mosteller&#xff09;的《概率论中的五十个具有挑战性的问题与解决方案》&#xff09;一书。我认为创建一个系列来讨论这些可能作为面试问题出现的迷人问题会很有趣。每篇…...

windows搭建MySQL主从补充说明

这3种情况是在HA切换时&#xff0c;由于是异步复制&#xff0c;且sync_binlog0&#xff0c;会造成一小部分binlog没接收完导致同步报错。 第一种&#xff1a;在master上删除一条记录&#xff0c;而slave上找不到。 第二种&#xff1a;主键重复。在slave已经有该记录&#xff…...

Python:GUI Tkinter

GUI编程 GUI编程&#xff08;Graphical User Interface Programming&#xff09;指的是用于创建图形用户界面的程序设计。这种界面采用图形方式显示信息&#xff0c;让用户可以通过图形化的方式与程序进行交互&#xff0c;而不是仅仅通过文本命令。GUI编程使得软件更加直观易用…...

制作一个可以离线安装的Visual Studio安装包

须知 前提条件&#xff0c;需要电脑可以正常上网且网速还行&#xff0c;硬盘可以空间容量足够大&#xff0c;怎么判断容量够用&#xff1f;由组件数量的多少来决定。Visual Studio 频道和发布节奏 https://learn.microsoft.com/zh-cn/visualstudio/productinfo/release-rhythm…...

机器学习——决策树(三)

【说明】文章内容来自《机器学习——基于sklearn》&#xff0c;用于学习记录。若有争议联系删除。 1、案例一 决策树用于是否赖床问题。 采用决策树进行分类&#xff0c;要经过数据采集、特征向量化、模型训练和决策树可视化4个步骤。 赖床数据链接&#xff1a;https://pan…...

模型量化之AWQ和GPTQ

什么是模型量化 模型量化&#xff08;Model Quantization&#xff09;是一种通过减少模型参数表示的位数来降低模型计算和存储开销的技术。一般来说&#xff0c;模型参数在深度学习模型中以浮点数&#xff08;例如32位浮点数&#xff09;的形式存储&#xff0c;而模型量化可以…...

一个简单的 HTTP 请求和响应服务——httpbin

拉取镜像 docker pull kennethreitz/httpbin:latest 查看本地是否存在存在镜像 docker images | grep kennethreitz/httpbin:latest 创建 deployment&#xff0c;指定镜像 apiVersion: apps/v1 kind: Deployment metadata:labels:app: httpbinname: mm-httpbinnamespace: mm-…...

2024黑龙江省职业院校技能大赛暨国赛选拔赛应用软件系统开发赛项(高职组)赛题第3套

2024黑龙江省职业院校技能大赛暨国赛选拔赛 应用软件系统开发赛项&#xff08;高职组&#xff09; 赛题第3套 目录&#xff1a; 需要竞赛源码资料可以私信博主。 竞赛说明 模块一&#xff1a;系统需求分析 任务1&#xff1a;制造执行MES—质量管理—来料检验&#xff08;…...

如何在5分钟内免费安装DeepL Chrome翻译插件:终极指南

如何在5分钟内免费安装DeepL Chrome翻译插件&#xff1a;终极指南 【免费下载链接】deepl-chrome-extension A DeepL Translator Chrome extension 项目地址: https://gitcode.com/gh_mirrors/de/deepl-chrome-extension 你是否厌倦了生硬的机器翻译&#xff1f;想要在浏…...

CameraFileCopy:创新实现手机摄像头离线文件传输的完整解决方案

CameraFileCopy&#xff1a;创新实现手机摄像头离线文件传输的完整解决方案 【免费下载链接】cfc Demo/test android app for libcimbar. Copy files over the cell phone camera! 项目地址: https://gitcode.com/gh_mirrors/cfc/cfc 在无线网络无处不在的今天&#xff…...

CANN/asc-devkit:__float2float_rn类型转换函数

__float2float_rn 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言&#xff0c;原生支持C和C标准规范&#xff0c;主要由类库和语言扩展层构成&#xff0c;提供多层级API&#xff0c;满足多维场景算子开发诉求。 项目地址: https://gitco…...

大学生选择网络工程,后期就业方向有哪些?

每年高考填志愿那阵子,总有学弟学妹跑来问:"网络工程这个专业怎么样?毕业了好找工作吗?"说实话,这个问题不太好回答。不是方向少,而是方向太多,而且每个方向的天花板和薪资差距不小。 我当年也是稀里糊涂选的网络工程,入学才知道跟计算机科学不是一回事。但…...

3个企业级验证码识别架构设计:DdddOcr技术选型与性能优化策略

3个企业级验证码识别架构设计&#xff1a;DdddOcr技术选型与性能优化策略 【免费下载链接】ddddocr 带带弟弟 通用验证码识别OCR pypi版 项目地址: https://gitcode.com/gh_mirrors/dd/ddddocr 引言&#xff1a;验证码识别在企业自动化系统中的战略价值 在当今数字化时…...

Solidity 知识点速记整理 - (2026年) (75 - 94)

文章目录前言Solidity 知识点速记整理 - (2026年) (75 - 94)前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&#xff0c;写作不易啊^ _ ^。   而且听说点赞的人每天的运气都不会太差&#xff0c;实在白嫖的话&#xff0c;那…...

为什么很多扩音设备总是啸叫?这块语音模组可能就是答案

做过扩音器、对讲机、会议设备的人&#xff0c;大概率都被这些问题折磨过&#xff1a;一开大音量就啸叫环境太吵听不清对讲时回音严重麦克风离远一点声音就没了最近看到一款 A-59F 语音处理模组&#xff0c;思路挺有意思。它把&#xff1a;AI降噪回音消除扩音防啸叫双麦定向拾音…...

Python机器学习管道:Scikit-learn Pipeline深度解析

Python机器学习管道&#xff1a;Scikit-learn Pipeline深度解析 引言 在Python开发中&#xff0c;机器学习管道是构建和部署机器学习模型的关键。作为一名从Rust转向Python的后端开发者&#xff0c;我深刻体会到Scikit-learn Pipeline在简化机器学习工作流方面的优势。Pipeline…...

Windows 11系统优化终极指南:用Win11Debloat一键清理系统垃圾,提升电脑性能

Windows 11系统优化终极指南&#xff1a;用Win11Debloat一键清理系统垃圾&#xff0c;提升电脑性能 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various ot…...

智慧养殖与猪行为实例分割数据集 动物行为分析数据集 生猪进食数据集 生猪睡觉站立姿态识别数据集 yolo格式数据集

猪行为实例分割数据集核心信息 类别 Tags 标签 Instance Segmentation 实例分割 Model 模型Classes (4) 类别&#xff08;4&#xff09; Eating 进食 Lying 躺着 Sitting 坐着 Standing 站立数据集关键信息表信息类别具体内容数据集类别猪行为实例分割数据集&#xff0c;聚焦猪…...