Gib*_*bbs 4 html css html5 css3
.circle
{
width: 100px;
height: 100px;
border-radius: 50%;
border: 1px solid;
}Run Code Online (Sandbox Code Playgroud)
<div class="circle">
</div>
<div class="value">30</div>Run Code Online (Sandbox Code Playgroud)
如果值为30,我只想填充30%的圆圈,颜色为红色.我如何只使用css?
编辑回答@AMIT
.fullCircle
{
width: 100px;
height:100px;
bordeR: 1px solid;
border-radius: 50%;
background-color: #f00;
}Run Code Online (Sandbox Code Playgroud)
<div class="fullCircle">
</div>Run Code Online (Sandbox Code Playgroud)
它是100%填充圆圈.所以我希望你现在清楚我所说的30%填充圈.
如果可以通过CSS,它将是兼容的.为什么不?
编辑
一个谷歌图像来回答filled
链接
使用opacity.它是介于0(=透明)和1(=不透明)之间的值,因此30%为0.3.
.circle
{
width: 100px;
height: 100px;
border-radius: 50%;
border: 1px solid;
background-color: #ff0000;
opacity: 0.3;
}Run Code Online (Sandbox Code Playgroud)
<div class="circle">
</div>
<div class="value">30</div>Run Code Online (Sandbox Code Playgroud)
编辑根据你的评论,你想要360度的圆的30%,所以360 x 30%= 108.为此,使用background-image:
linear-gradient,意思是-90度.这将用红色填充圆圈的一半.linear-gradient度为-18(= 108-90).这将覆盖超过108(30%)的红色部分..circle
{
width: 100px;
height: 100px;
border-radius: 50%;
border: 1px solid;
background-image:
linear-gradient(18deg, white 50%, transparent 50%),
linear-gradient(-90deg, red 50%, transparent 50%);
}Run Code Online (Sandbox Code Playgroud)
<div class="circle"></div>
<div class="value">30</div>Run Code Online (Sandbox Code Playgroud)