我写了一个馅饼进度条。我在网上获得了css并根据需要修改了代码。有效。但是当我尝试将饼图的大小减小到65px(高度/宽度)或等效的em时,饼图进度条无法正常工作。
出于某种原因,这没有显示出来。显示在浏览器窗口中。
CSS:
.score {
position: absolute;
z-index: 1;
font-size: 200px;
width:0.8em;
height:0.8em;
float: left;
-moz-border-radius: 102px;
-webkit-border-radius: 102px;
border-radius: 102px;
}
.best {
border: 20px solid #008000;
background-color: #339928;
}
.best .pie {
border: 0.1em solid #89DA81;
}
.best .pie-color {
background-color: #339928;
}
.score .circle-num {
position: absolute;
top: 42px;
left: -16px;
width: 3.33em;
font-size: 0.3em;
text-align:center;
z-index: 20;
}
.score .slice {
position:absolute;
width:1em;
height:1em;
clip:rect(0px,1em,1em,0.5em);
top: -20px;
left: -20px;
}
.score .slice.score50 {
clip:rect(auto, auto, auto, auto);
}
.score .slice > .pie {
position:absolute;
width:0.8em; /* 1 - (2 * border width) */
height:0.8em; /* 1 - (2 * border width) */
clip:rect(0em,0.5em,1em,0em);
-moz-border-radius:0.5em;
-webkit-border-radius:0.5em;
border-radius:0.5em;
}
.score .slice > .pie.fill {
-moz-transform:rotate(180deg) !important;
-webkit-transform:rotate(180deg) !important;
-o-transform:rotate(180deg) !important;
transform:rotate(180deg) !important;
}
.pie-color {
background-color: #339928;
}
HTML:
<div class="score best">
<div class="circle-num"></div>
<div class="slice">
<div class="pie pie-color"></div>
</div>
</div>
JS:
$(document).ready(function(){
var scorenum = 15, output = $('.circle-num');
drawPie(scorenum);
function drawPie (scorenum) {
var val = scorenum;
output.html(val);
if (val >= 50) {
$('.slice').addClass('score50').append('<div class="pie fill pie-color"></div>');
}
var deg = 360/100*scorenum;
$('.pie').css({
'-moz-transform':'rotate('+deg+'deg)',
'-webkit-transform':'rotate('+deg+'deg)',
'-o-transform':'rotate('+deg+'deg)',
'transform':'rotate('+deg+'deg)'
});
}
});