我写的demo 在这https://jsfiddle.net/yye46hgy/,
怎样才能得到如图的效果呢?(而且不能定宽定高,做成自适应)
方法1:
html
<div class="half-circle">
</div>
css
.half-circle{
width:0px;
height:0px;
border-width:100px;
border-style:solid;
border-color:violet violet transparent transparent;
background-color:transparent;
transform:rotate(-45deg);
-webkit-transform:rotate(-45deg);
-moz-transform:rotate(-45deg);
-ms-transform:rotate(-45deg);
-o-transform:rotate(-45deg);
border-radius:50%;
}
方法2
html
<div class="half-circle">
<div class="inner-circle">
</div>
</div>
css
.half-circle{
width:200px;
height:100px;
overflow:hidden;
}
.inner-circle{
width:200px;
height:200px;
border-radius:50%;
background-color:purple;
}
10 回答11.1k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
5 回答1.9k 阅读
分别设置border-radius的水平和垂直半径就行了吧。
需要做些数学运算,可以用sass或less。