如何使用CSS实现圆形进度条

这篇文章主要介绍了如何使用CSS实现圆形进度条,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

创新互联建站专注于企业网络营销推广、网站重做改版、永安网站定制设计、自适应品牌网站建设、HTML5商城网站建设、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为永安等各大城市提供网站开发制作服务。

首先一个父级div设置相对定位,内部含有四个半圆div和一个用于遮罩的小圆div

实现步骤

先写出基本html结构

父级div和content添加样式

.box{

position: relative;

}

.content {

top: 10px;

left: 10px;

width: 100px;

height: 100px;

border-radius: 50%;

position: absolute;

background:red;

z-index: 5;

}

当前效果:

添加第一个背景半圆

.bg1{

position: absolute;

width: 60px;

height: 120px;

border-radius: 120px 0 0 120px;

z-index: 3;

background: sandybrown;

}

添加第二个背景半圆

.bg2{

left: 60px;

position: absolute;

width: 60px;

height: 120px;

border-radius: 0px 120px 120px 0;

z-index: 1;

background: sandybrown;

}

添加第一个进度半圆,这个时候,去页面调整rotate的角度可以看到进度旋转

.pr1 {

position: absolute;

left: 60px;

width: 60px;

height: 120px;

border-radius: 0px 120px 120px 0px;

z-index: 2;

background: forestgreen;

transform: rotate(-180deg);

transform-origin: 0px 60px;

}

添加第二个半圆,第一个半圆只能旋转到50%,所以需要第二个半圆来走完剩下的一半

.pr2 {

position: absolute;

left: 60px;

border-radius: 0px 120px 120px 0px;

z-index: 4;

background: forestgreen;

transform: rotate(-180deg);

transform-origin: 0px 60px;

}

添加动画函数,在分别把动画函数添加到.pr1和.pr2中,在实际需求中可以用js控制连个进度半圆的旋转角度

.pr1 {

...

animation: pr1A 5s infinite linear forwards;

}

.pr2 {

...

animation: pr2A 5s infinite linear forwards;

}

@keyframes pr1A {

0% {

transform: rotate(-180deg);

}

50% {

transform: rotate(0deg);

}

100% {

transform: rotate(0deg);

}

}

@keyframes pr2A {

0% {

transform: rotate(-180deg);

}

100%{

width: 60px;

height: 120px;

transform: rotate(180deg);

}

}

感谢你能够认真阅读完这篇文章,希望小编分享的“如何使用CSS实现圆形进度条”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!


分享文章:如何使用CSS实现圆形进度条
分享路径:http://pwwzsj.com/article/jpipec.html