您的位置:首页 > Web前端 > CSS

CSS3绘制环形进度条

2015-09-22 17:46 519 查看
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
*{margin: 0;padding: 0;}
.box{width:200px;height:200px;margin:10px auto;position:relative;}
.box div{position:absolute;top:0;left:0;border-radius:50%;height:160px;width:160px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;}
.box .bg{border:silver 20px solid}
.box .bg2{border:silver 20px solid;clip:rect(0,100px,200px,0);}
.box .rount{border:green 20px solid;clip:rect(0,100px,200px,0);-webkit-transform:rotate(0deg);}
.box .rount2{border:green 20px solid;clip:rect(0,200px,200px,100px);-webkit-transform:rotate(0deg);display:none}
.box .num{font:bold 24px/160px tahoma;text-align:center;color:green;top:20px;left:20px;z-index:9;}
.points{width:200px;margin:10px auto;text-align: center;}
</style>
<script src="../jquery-1.7.2.js"></script>
<script>
$(function(){
var points = $('#points'),
rount = $('#rount'),
rount2 = $('#rount2'),
num = $('#num');

points.change(function(){
var n =points.val();
num.text(n + '%');
if(n<=50){
rount.css('-webkit-transform','rotate(' + 3.6*n + 'deg)');
rount2.css('display','none');
}else{
rount.css('-webkit-transform','rotate(180deg)');
rount2.css('display','block');
rount2.css('-webkit-transform','rotate(' + 3.6*(n-50) + 'deg)');
}
})
})

</script>
</head>
<body>
<div class="box">
<div class="bg"></div>
<div id="rount" class="rount"></div>
<div class="bg2"></div>
<div id="rount2" class="rount2"></div>
<div id="num" class="num">0</div>
</div>
<div class="points">
<span>0</span>
<input type="range" id="points" min="0" max="100" step="1" value="0">
<span>100</span>
</div>
</body>
</html>


测试结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: