用纯CSS怎样做一个酷炫的电池充电特效
Admin 2022-05-25 群英技术资讯 1431 次浏览
这篇文章主要介绍“用纯CSS怎样做一个酷炫的电池充电特效”的相关知识,下面会通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“用纯CSS怎样做一个酷炫的电池充电特效”文章能帮助大家解决问题。
我们知道构成前端的三大语言有:html、css和js,其中最为神秘的便是css,为什么这么说呢?自从动画、过度等属性的出现,可以说只有你想不到,就没有做不到~
特效:电池充电特效,整体特效可在最上方看到
要想完成这个特效,就必须要知道一些前置的属性,简单介绍一下吧:
animation 、transform 和 filter 这三个就不多做介绍了,基本上所有的动画都会用到这两个属性。
box-shadow:阴影
用法:box-shadow: h-shadow v-shadow blur spread color inset;
border-radius:设置圆角
可设置四个值,与 margin、padding 的使用方法一样
也就是每个半径的四个值的顺序是:左上角,右上角,右下角,左下角。
linear-gradient():渐变,用于创建一个表示两种或多种颜色线性渐变的图片。
用法:background-image: linear-gradient(direction, color-stop1, color-stop2, ...);
我们设置两个 div ,一个座位底部的容器,上面弄个小盖子,主要通过border-radius设置下周边的圆角,并且加入box-shadow加入阴影,增强立体感

这里可以使用定位布局,通过top来控制水的位置,top的值越大水越低,top的值越小水越高
我们把水位设置为80%,同时通过linear-gradient() 来设置水的一个渐变色:

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

这时需要注意的点是:
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);
}
}
这个特效相信大家都见过,其思想就是在上面的大概位置上设置背景颜色,用相同的底色覆盖,
然后用到translate这个属性,通过转化x、y值,然后通过不停的旋转角度,至于数值为啥是这个值,我也搞不清楚。。。有知道的小伙伴可以在评论区留言.
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);
}
}
此时,我们发现这个效果并不太真实,进行多覆盖两个,改变旋转值和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);
}
}此时的效果就非常真实了

不得不说css真的很神奇,最神秘的莫过于css,喜欢的点个赞??支持下吧(● ̄(エ) ̄●)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
CSS盒子塌陷怎么办?CSS盒子塌陷也就是指本应该在父盒子内部的元素跑到了外部。那么究竟为何出现这样的问题呢?我们该怎样解决处理?对此本文就给大家分享了五种解决CSS盒子塌陷的方法技巧,有需要的朋友可以参考。
这篇文章主要介绍了使用CSS的border-radius属性 设置圆弧,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
本篇文章给大家带来了关于css的相关知识,其中主要介绍了float属性控制div左右浮动的相关问题,浮动,顾名思义,就是漂浮的意思。指的是一个元素脱离文档流,悬浮在父元素之上的现象,下面一起来看一下,希望对大家有帮助。
浅谈Flex布局与缩放比例计算,一些朋友可能会遇到这方面的问题,对此在下文小编向大家来讲解一下,内容详细,易于理解,希望大家阅读完这篇能有收获哦,有需要的朋友就往下看吧!
这篇文章主要给大家分享的是关于CSS浮动导致网页的布局紊乱的问题的解决方法,一些朋友遇到在子盒子设置浮动之后,页面布局出现了紊乱的问题。我们想要解决这个问题,有几种方法,下面小编就给大家来一一介绍一下。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008