css3 绘制画圆、扇形
css已经越来越强大了 ,可以使用它来绘制各种简单的形状,用于代替图片显示,这次的分享主要用到画圆,扇形
实现圆形
<divclass="circle"></div><style>.circle{border-radius:50%;width:80px;height:80px;background:#666;}</style>
效果如下:
border-radius圆角的四个值按顺序取值分别为:左上、右上、右下、左下。这里只设置一个值,代表四个角的取值都为为50%
原理:
border-radius: 50% 弯曲元素的边框以创建圆。
由于圆在任何给定点具有相同的半径,故宽和高都需要保证一样的值,不同的值将创建椭圆。
实现扇形
利用border-radius,实现90度角的扇形:
<divclass="sector"></div><style>.sector{border-radius:80px00;width:80px;height:80px;background:#666;}</style>
效果如下:
原理:
左上角是圆角,其余三个角都是直角:左上角的值为宽和高一样的值,其他三个角的值不变(等于0)。
2、绘制任意角度的扇形
效果如下:
/绘制一个60度扇形/
/绘制一个85度扇形/
/绘制一个向右扇形,90度扇形/
/*绘制一个颜色扇形 */
/*绘制一个不同颜色半圆夹角 */
完整代码如下:
<divclass="shanxingshanxing1"><divclass="sx1"></div><divclass="sx2"></div></div><!--*绘制一个85度扇形*/--p><divclass="shanxingshanxing2"><divclass="sx1"></div><divclass="sx2"></div></div><!--*绘制一个向右扇形,90度扇形*--><divclass="shanxingshanxing3"><divclass="sx1"></div><divclass="sx2"></div></div><!--*绘制一个颜色扇形*/--p><divclass="shanxingshanxing4"><divclass="sx1"></div><divclass="sx2"></div></div><!--/*绘制一个不同颜色半圆夹角*/--><divclass="shanxingshanxing5"><divclass="sx1"></div><divclass="sx2"></div></div><style>.shanxing{position:relative;width:200px;height:200px;border-radius:100px;background-color:yellow;}.sx1{position:absolute;width:200px;height:200px;transform:rotate(0deg);clip:rect(0px,100px,200px,0px);/*这个clip属性用来绘制半圆,在clip的rect范围内的内容显示出来,使用clip属性,元素必须是absolute的*/border-radius:100px;background-color:#f00;/*-webkit-animation:an12sinfinitelinear;*/}.sx2{position:absolute;width:200px;height:200px;transform:rotate(0deg);clip:rect(0px,100px,200px,0px);border-radius:100px;background-color:#f00;/*-webkit-animation:an22sinfinitelinear;*/}/*绘制一个60度扇形*/.shanxing1.sx1{transform:rotate(-30deg);}.shanxing1.sx2{transform:rotate(-150deg);}/*绘制一个85度扇形*/.shanxing2.sx1{transform:rotate(-45deg);}.shanxing2.sx2{transform:rotate(-140deg);}/*绘制一个向右扇形,90度扇形*/.shanxing3.sx1{transform:rotate(45deg);}.shanxing3.sx2{transform:rotate(-45deg);}/*绘制一个颜色扇形*/.shanxing4.sx1{transform:rotate(45deg);background-color:#fff;}.shanxing4.sx2{transform:rotate(-45deg);background-color:#fff;}/*绘制一个不同颜色半圆夹角*/.shanxing5.sx1{transform:rotate(45deg);background-color:#f00;}.shanxing5.sx2{transform:rotate(-45deg);background-color:#0f0;</style>
前端的专业程度很强,80%的问题自己很难解决,而且会很浪费时间,一个小问题可以困扰一天,这样自信心会受到严重的打击!
自己是一个五年的前端工程师
我的前端学习交流群:731771211,里面都是学习前端的,如果你想制作酷炫的网页,想学习编程。从最基础的HTML+CSS+JS【炫酷特效,游戏,插件封装,设计模式】到移动端HTML5的项目实战的学习资料都有整理,送给每一位前端小伙伴,有想学习web前端的,或是转行,或是大学生,还有工作中想提升自己能力的,正在学习的小伙伴欢迎加入。
点击:加入
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。