css实现波浪球效果图,使用css实现圆形波浪效果图

在移动端经常看到一些圆形波浪图来显示金额,刚开始我认为这种效果只能用canvas写的,后来发现用css也可以。

原理:我们都知道让块元素的border-radius:50%会变成圆形,如果少于50%呢,其实就变成不规则的圆形。我们可以利用这个特征,用伪类加上transform动画来实现波浪效果。

先看一下效果图:

1d98823240902cd870ba1e7d635cc5ed.png

//css代码

.wave {

position: relative;

width: 200px;

height: 200px;

background: @color;

border: 5px solid #76daff;

border-radius: 50%;

overflow: hidden;

}

.wave-box::before,

.wave-box::after {

content: '';

position: absolute;

top: 0;

left: 50%;

width: 400px;

height: 400px;

border-radius: 45%;

-webkit-transform: translate(-50%, -70%);

transform: translate(-50%, -70%);

background: rgba(255, 255, 255, 0.5);

-webkit-animation: rotate 10s linear infinite;

animation: rotate 10s linear infinite;

z-index: 10;

}

@keyframes rotate {

50% {

-webkit-transform: translate(-50%, -75%) rotate(180deg);

transform: translate(-50%, -75%) rotate(180deg);

}

100% {

-webkit-transform: translate(-50%, -70%) rotate(180deg);

transform: translate(-50%, -70%) rotate(180deg);

}

}

//或者使用预编译语言更方便,这里使用less

.wave(@width; @height; @color) {

position: relative;

width: @width;

height: @height;

background: @color;

border: 5px solid @color;

border-radius: 50%;

overflow: hidden;

&::before,

&::after {

content: '';

position: absolute;

top: 0;

left: 50%;

width: @width * 2;

height: @height * 2;

border-radius: 45%;

transform: translate(-50%, -70%);

background: rgba(255,255,255,0.5);

animation: rotate 10s linear infinite;

z-index: 10;

}

&::after {

border-radius: 47%;

background: rgba(255,255,255,0.5);

animation: rotate 10s linear -5s infinite;

z-index: 20;

}

}

//调用

.wave-box {

.wave(200px; 200px; #76daff);

}

总结

以上所述是小编给大家介绍的使用css实现圆形波浪效果图 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对找一找教程网网站的支持!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值