我只是想用另一个可以有任何半径的彩色馅饼制作一个空心球体。搜索了很多,但找到了我已经知道的border-radius
属性clip: rect(top, right, bottom, left)
。我该怎么用?我搜索了它的教程,但教程有点混乱和不完整。
究竟有什么影响?
请参见四色空心球的外观。
stackoverflow也不包含任何类似的问题。
答案 0 :(得分:6)
要创建该Pie效果,您必须有2个div。
<div id="parent">
<div id="master">
</div>
<div id="slave">
</div>
</div>
第一个div是原始球体,它可以纯粹用border-radius
完成。
-webkit-border-radius: 100px;
-moz-border-radius: 100px;
border-radius: 100px;
width:70px;
height:70px;
border-style:solid;
border-width:10px;
border-color:#573;
第二个div将具有较浅的颜色,再次纯粹使用border-radius
。
-webkit-border-radius: 100px;
-moz-border-radius: 100px;
border-radius: 100px;
width:70px;
height:70px;
border-style:solid;
border-width:10px;
border-color:#99FF33;
然后我们使用clip:rect(0px,50px,50px,0px);
。
现在我们只能使用postion:relative;
和position:absolute;
<强> CSS 强>
#parent
{
position:relative;
}
#master
{
-webkit-border-radius: 100px;
-moz-border-radius: 100px;
border-radius: 100px;
width:70px;
height:70px;
border-style:solid;
border-width:10px;
border-color:#573;
}
#slave
{
-webkit-border-radius: 100px;
-moz-border-radius: 100px;
border-radius: 100px;
width:70px;
height:70px;
border-style:solid;
border-width:10px;
border-color:#99FF33;
position:absolute;
top:0px;
left:0px;
clip:rect(0px,50px,50px,0px);
}
检查 - DEMO 。
选中此Border Radius Generator(用于制作圈子)。
<强>更新强>
我找到了一种减少和增加的方法,但它需要2个奴隶,相同的CSS属性。
如果百分比是50%及以上,我们必须隐藏第二个奴隶,并减少或增加第一个奴隶的bottom
。
clip:rect(0px,50px,20px,0px);
clip:rect(0px,50px,100px,0px);
现在当圆圈的一半被填满时,我们必须show
第二个奴隶。要减少它并增加它,我们应该更改top
。
clip:rect(60px,100px,100px,0px);
clip:rect(20px,100px,100px,0px);
查看 - DEMO
clip:rect(top,right,bottom,left);