纯CSS实现水波纹的电池充电动画特效

本篇文章给大家介绍一下巧用 css实现水波纹的电池充电动画特效的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

纯CSS实现水波纹的电池充电动画特效

我们知道构成前端的三大语言有:htmlcssjs,其中最为神秘的便是css,为什么这么说呢?自从动画、过度等属性的出现,可以说只有你想不到,就没有做不到~

上一篇文章介绍了一种手机充电动画效果,今天就延续一下,这个相比于上篇的就有点简单了,不过为了女朋友,特意就写一下吧~

特效:电池充电特效,整体特效可在最上方看到

立即学习“前端免费学习笔记(深入)”;

前置知识:

要想完成这个特效,就必须要知道一些前置的属性,简单介绍一下吧:

animationtransformfilter 这三个就不多做介绍了,基本上所有的动画都会用到这两个属性。【推荐学习:css视频教程】

box-shadow

box-shadow:阴影

用法:box-shadow: h-shadow v-shadow blur spread color inset;

h-shadow:必填的,水平阴影的位置,允许负值v-shadow:必需的。垂直阴影的位置。允许负值blur:模糊距离spread:阴影的大小color:阴影的颜色inset:从外层的阴影(开始时)改变阴影内侧阴影

border-radius

border-radius:设置圆角

可设置四个值,与 marginpadding 的使用方法一样

也就是每个半径的四个值的顺序是:左上角右上角右下角左下角

如果省略左下角,右上角是相同的。如果省略右下角,左上角是相同的。如果省略右上角,左上角是相同的。

linear-gradient()

linear-gradient():渐变,用于创建一个表示两种或多种颜色线性渐变的图片。

用法:background-image: linear-gradient(direction, color-stop1, color-stop2, ...);

direction: 用角度值指定渐变的方向(或角度),制定方向color…: 依次有什么颜色变为什么颜色

容器

我们设置两个 div ,一个座位底部的容器,上面弄个小盖子,主要通过border-radius设置下周边的圆角,并且加入box-shadow加入阴影,增强立体感

1.png

充电效果

这里可以使用定位布局,通过top来控制水的位置,top的值越大水越低,top的值越小水越高

我们把水位设置为80%,同时通过linear-gradient() 来设置水的一个渐变色:

2.png

那么动画就很简单了,只需要控制 top值就会造成水的上升,像这样

3.gif

这时需要注意的点是:

最上方我们的容器设置了圆角,所以在动画到100%的时候,要和容器的圆角一样水位在移动,为了增强立体感,可设置阴影,可以以有个递进的效果,所以颜色最好稍微变深一点,并且颜色最好偏近变色还是通过:filter: hue-rotate();这个属性控制

    .content{ //容器        border-radius: 15px 15px 5px 5px;        &::after{            position: absolute;            top: 80%;            background: linear-gradient(to bottom, #7abcff 0%, #00BCD4 44%, #2196F3 100%);            border-radius: 0px 0px 5px 5px;            box-shadow: 0 14px 28px rgba(33, 150, 243, 0), 0 10px 10px rgba(9, 188, 215, 0.08);            animation: change 10s linear infinite;            filter: hue-rotate(90deg);        }    }    @keyframes change {          30% {            box-shadow: 0 14px 28px rgba(0, 150, 136, 0.83), 0px 4px 10px rgba(8, 117, 134, 0.4);          }          50%{            filter: hue-rotate(60deg);          }          80% {            top: 20%;            border-radius: 0 0 5px 5px;            box-shadow: 0 14px 28px rgba(6, 136, 153, 0.2), 0 10px 10px rgba(12, 10, 112, 0.08);          }          100% {              top: 0%;              filter: hue-rotate(0deg);              border-radius: 15px 15px 5px 5px;              box-shadow: 0 14px 28px rgba(7, 93, 104, 0), 0 10px 10px rgba(31, 3, 68, 0.4);          }        }

4.gif

水波纹特效

这个特效相信大家都见过,其思想就是在上面的大概位置上设置背景颜色,用相同的底色覆盖,

然后用到translate这个属性,通过转化xy值,然后通过不停的旋转角度,至于数值为啥是这个值,我也搞不清楚。。。有知道的小伙伴可以在评论区留言.

p{ //复盖    border-radius: 45% 47% 44% 42%;    transform: translate(-50%, 0);    animation: move 10s linear infinite;}@keyframes move {  100% {      transform: translate(-50%, -160px)  rotate(720deg);  }}

5.gif

此时,我们发现这个效果并不太真实,进行多覆盖两个,改变旋转值和border-radius的值来设置水面不重叠,但又有差距的效果

p{    &:nth-child(2){      border-radius: 38% 46% 43% 47%;      transform: translate(-50%, 0) rotate(-135deg);    }    &:nth-child(3){      border-radius: 42% 46% 37% 40%;      transform: translate(-50%, 0) rotate(135deg);    }}

此时的效果就非常真实了

6.gif

End

不得不说css真的很神奇,最神秘的莫过于css,喜欢的点个赞??支持下吧(● ̄(エ) ̄●)

(学习视频分享:web前端)

以上就是纯CSS实现水波纹的电池充电动画特效的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1623931.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 08:25:54
下一篇 2025年12月24日 08:26:08

相关推荐

  • 聊聊如何用CSS box-shadow创建像素创意动画

    利用css也能创建像素创意动画!下面本篇文章给大家介绍一下用css box-shadow创建像素创意动画的方法,有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 本期我们要使用css3中的box-shadow属性来作画,相信大家也对box-shadow属性并不陌生,它主要用于在元素的…

    2025年12月24日 好文分享
    000
  • 关于 CSS 变量的一些你可能不了解的事!

    本篇文章带大家了解一下css 变量,介绍下没人告诉你关于 css 变量的那些事。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 CSS 变量很不错哦,但是你知道它们的详情?【推荐学习:css视频教程】 1. 小心 !important 与 CSS 变量一起使用 !important…

    2025年12月24日 好文分享
    000
  • 详细介绍CSS渐变、阴影和滤镜

    本篇文章给大家带来了关于css中渐变、阴影和滤镜的相关知识,其中包括了线性渐变、径向渐变、圆锥渐变等等相关问题,希望对大家有帮助。 推荐学习:css视频教程 一、初识 CSS 渐变 CSS 渐变是image类型的一种特殊类型用gradient表示,由两种或多种颜色之间的渐进过渡组成。 三种渐变类型:…

    2025年12月24日 好文分享
    000
  • 你必须了解Selenium使用CSS定位总结

    本篇文章给大家带来了关于selenium使用css定位总结的相关知识,css定位也有它的价值,css定位更快,语法更简洁,希望对大家有帮助。 大部分人在使用selenium定位元素时,用的是xpath定位,css定位往往被忽略掉了,其实css定位也有它的价值,css定位更快,语法更简洁 一、CSS …

    2025年12月24日
    000
  • 快看!10个值得收藏的CSS实用小技巧

    本篇文章给大家分享10个很棒的css使用技巧,让前端开发更轻松,快来收藏吧,希望对大家有所帮助! 我会为你带来 10 个很棒的 CSS 技巧,它们会让你作为开发人员更轻松,特别是如果你是初学者。(推荐学习:css视频教程) 1.如何在CSS中修复网页上的水平滚动 如果你在设置网页样式并且在底部看到水…

    2025年12月24日 好文分享
    000
  • 带你通过10个例子,了解FlexBox模型的所有属性

    本篇文章带大家深入了解一下flexbox(弹性盒子)模型,通过10个demo示例,来详细介绍弹性盒子模型的所有属性,希望对大家有所帮助! FlexBox(弹性盒子)模型,也就是我们常说的flex布局,现在flex布局已经是前端的主流布局方案,早就是前端必会的内容了,接下来我们一起来看一下弹性盒子模型…

    2025年12月24日 好文分享
    000
  • 总结分享CSS设计模式知识点

    本篇文章给大家带来了关于css设计模式的相关知识,其中包括oocss、bem、smacss、itcss以及acss的相关问题,希望对大家有帮助。 前言 传统的CSS书写风格是随意命名,堆叠样式,造成了混乱不堪的结果,你是否遇到庞大复杂的项目里,CSS代码难以维护的情况,你是否想要除了能够还原实物原型…

    2025年12月24日 好文分享
    000
  • 深入浅析Tailwind CSS(总结分享)

    本篇文章给大家带来了关于tailwind css的相关知识,tailwindcss 是一个css框架,和bootstrap、element ui、antd、bulma一样将一些css样式封装好,用来加速我们开发的一个工具,希望对大家有帮助。 (学习视频分享:css视频教程) 和其他的CSS框架有什么…

    2025年12月24日 好文分享
    000
  • 分享12个实用的 CSS 小技巧(快来收藏)

    本篇文章给大家分享12个有趣且实用的 css 小技巧,让前端开发更轻松,快来收藏吧,希望对大家有所帮助! (推荐学习:css视频教程) 1. 打字效果 代码实现: 有趣且实用的 CSS 小技巧 .wrapper { height: 100vh; display: flex; align-items:…

    2025年12月24日 好文分享
    000
  • 2022年你值得了解的几个CSS新特性(收藏学习)

    本篇文章给大家分享几个2022年值得期待的、不应该错过的 css 新功能,一起收藏学习吧! 对于CSS来说,2022年是非常值得期待的一年,大量的新功能即将出现,有些已经开始登录浏览器,有些可能会在2022年获得浏览器的广泛支持。下面就来看看2022年有哪些值得期待的 CSS 新功能吧!(推荐学习:…

    2025年12月24日
    000
  • 深入了解CSS动画新特性:@scroll-timeline

    在之前的文章《2022年你值得了解的几个css新特性(收藏学习)》中带大家简单介绍了几个css新特性,今天带大家深入了解其中的一个新特性(动画杀手锏):@scroll-timeline,希望对大家有所帮助! 在 CSS 规范 Scroll-linked Animations 中,推出了一个划时代的 …

    2025年12月24日 好文分享
    000
  • 如何利用CSS来美化滑动输入条?自定义样式方法浅析

    如何利用css来美化滑动输入条(input range)?下面本篇文章给大家介绍一下利用纯 css 自定义滑动输入条样式的方法,希望对大家有所帮助! 关于原生 input range 滑动输入条如何自定义样式一直都是我心里的一道坎,一般情况下,可以很轻易的美化到这个程度。(推荐学习:css视频教程)…

    2025年12月24日 好文分享
    000
  • css3怎么设置rotate旋转点

    在css3中,可以利用“transform-origin”属性设置rotate旋转元素时的旋转点,该属性用于更改转换元素的位置,可以改变旋转的中心点,语法为“transform-origin: x-axis y-axis z-axis;”。 本教程操作环境:windows10系统、CSS3&…

    2025年12月24日
    000
  • css3如何让盒子水平居中

    css3让盒子水平居中的方法:1、使用margin属性,给盒子元素添加“margin: 0 auto;”样式即可水平居中;2、利用flex弹性布局来实现水平居中;3、利用position和transform属性实现水平居中。 本教程操作环境:windows7系统、CSS3&&HTML…

    2025年12月24日 好文分享
    000
  • 如何将css文件设置为utf-8

    在css中,可以利用“@charset”规则来将字符编码设置为“utf-8”,该规则可以指定样式文件中使用的字符编码,语法为“@charset “UTF-8”;”;“@charset”规则必须是样式表中的第一个元素,前面不得有任何字符。 本教程操作环境:windows7系统、…

    2025年12月24日
    000
  • 手把手教你使用CSS制作动态饼图(附代码)

    css如何制作饼图?下面本篇文章手把手教你使用css制作动态饼图,希望对大家有所帮助! 饼图是常见的组件,可让你显示整体的各个部分,你可以将它们用于许多不同的场景。你会发现很多关于构建这样一个组件的文章,但它们通常要么依赖于 SVG,要么依赖于大量的 HTML 元素。在这篇文章中,我将向你展示如何使…

    2025年12月24日 好文分享
    000
  • 一文详解如何css实现动态弧形线条长短变化的Loading动画

    如何使用css 实现动态线条 loading 动画?下面本篇文章介绍一下使用css实现动态弧形线条长短变化的loading动画的3种方法,希望对大家有所帮助! 有群友问我,使用 CSS 如何实现如下 Loading 效果: 这是一个非常有意思的问题。 立即学习“前端免费学习笔记(深入)”; 我们知道…

    2025年12月24日 好文分享
    000
  • 实例详解之怎样使用css实现3D穿梭效果

    本篇文章给大家带来了怎样使用css来实现星际3d穿越效果的问题,希望对大家有帮助。 使用 CSS 3D 实现星际 3D 穿梭效果 这个技巧,我在 奇思妙想 CSS 3D 动画 | 仅使用 CSS 能制作出多惊艳的动画? 也有提及过,感兴趣的可以一并看看。 假设我们有这样一张图形: 立即学习“前端免费…

    2025年12月24日 好文分享
    000
  • 十分钟教会你仅使用一个div配合css实现饼状图

    本篇文章给大家带来了关于怎样使用一个div配合css实现病状图的相关问题,希望对大家有帮助。 完整的代码请滑到文末。 我们只使用一个div,仅采用css实现饼状图。 HTMl 结构 立即学习“前端免费学习笔记(深入)”; 60% 我们添加了几个 css 的变量: –p:进度条的百分比(纯…

    2025年12月24日 好文分享
    000
  • 聊聊利用CSS实现九宫格布局的几种方法!

    本篇文章给大家分享利用css实现九宫格布局的几种方法,并介绍一下nth-of-type 与 nth-child 的区别,希望对大家有所帮助! 最近几天刷面经常看见一道题,“九宫格布局”。自己尝试用几种办法实现了九宫格布局,发现这里面涉及了挺多的 css 知识,记录一下。 我觉得这篇文章讲得很好,大家…

    2025年12月24日 好文分享
    000

发表回复

登录后才能评论
关注微信