当前位置:主页 > 聚焦 >

css如何制作饼状图

时间:2020-11-06 23:24:58

  前言:

  在工作中,有时我们会有饼状图的需求,如统计图表、进度指示器、定时器等,当然,实现方式也有很多,甚至有现成的js库可以拿来直接使用。兴趣使然,自己动手利用纯css实现饼状图,看看效果如何。

  (视频css视频教程)

  <div class="pie"></div>.pie { width: 100px; height: 100px; border-radius: 50%; background: yellowgreen; background-image: linear-gradient(to right, transparent 50%, #655 0); } .pie::before { content: ''; display: block; margin-left: 50%; height: 100%; border-radius: 0 100% 100% 0/50%; background-color: inherit; transform-origin: left; transform: rotate(.2turn); }

  效果:
 

  改变rotate的角度就可以实现不同大小的饼状图效果,但是亲手试验的读者会发现,旋转50%以上并不能呈现出理想的效果,而是会呈现出如下效果:

  要解决这个问题,改变伪元素的背景色就可以解决,当需要展示的区域大于一半时,改变背景色就OK。

  下面笔者展示一个简单的进度指示器示例,读者亲手试验的话,会发现一个不断变化的饼状图效果。

  .pie { width: 100px; height: 100px; border-radius: 50%; background: yellowgreen; background-image: linear-gradient(to right, transparent 50%, #655 0); } .pie::before { content: ''; display: block; margin-left: 50%; height: 100%; border-radius: 0 100% 100% 0/50%; background-color: inherit; transform-origin: left; animation: spin 3s linear infinite,bg 6s step-end infinite; } @keyframes spin{ to{transform: rotate(.5turn);} } @keyframes bg{ 50%{background: #655;} }

  效果如下:
 

  读者最好亲手试验,尝试修改其中的属性,理解其中的意思,只有理解了才能做出更有趣的东西。如果读者对svg感兴趣的话,可以尝试使用svg来实现饼状图,svg实现的效果要更加丰富多彩些。

  CSS教程

热点推荐
1 苹果AI大重构内幕:Vision Pro负责人罗克韦

消息,苹果公司正在进行AI业务的重大重构,Vision Pro负责人迈克罗克韦尔被任命为Siri团队的新...

2 江卓尔:Strategy不会大幅净卖出BTC

消息,莱比特矿池CEO江卓尔发推表示,他认为Strategy不会大幅净卖出BTC,并给出三点理由:第一...

3 Yuga Labs完成白帽行动追回多种NFT资产

消息,Yuga Labs首席执行官Michael Figge在X平台发文称,团队已完成针对Flooring Protocol漏洞的白帽行...

4 XBIT DEX:霍尔木兹海峡交通预计6月底恢复

消息,预测市场显示,霍尔木兹海峡交通预计将在6月底恢复正常,当前「宏观经济」板块热门...

5 美官员:以方“勉强同意”按兵不动,特

一名美国高级官员和一名熟悉通话细节的以色列消息人士透露,特朗普当地时间周日在电话中...

6 地址0x709…cad6e再次建仓,抵押10570 ETH借出

消息,链上分析师AI姨指出,地址0x709cad6e时隔六个月再次建仓,14小时前抵押10570 ETH借出1600万...

7 伊朗声称还向以色列发射了攻击无人机

伊朗声称还向以色列发射了攻击无人机。如果这些无人机确实已发射,那么它们几个小时后便...

8 美国总统特朗普对AXIOS表示:伊朗的袭击

消息,美国总统特朗普对AXIOS表示:伊朗的袭击没有造成任何伤害。希望以色列不会进行报复。...

9 预计真主党将进行更大规模的升级行动

消息,以色列消息人士向第12频道透露:预计真主党将进行更大规模的升级行动,以色列有可能...

10 XBIT DEX:Nithya Raman击败Spencer Pratt晋级洛杉

消息,据XBIT DEX预测市场显示,Nithya Raman已击败Spencer Pratt晋级洛杉矶市长决选,当前胜算为9...

成都来彰科技 蜀ICP备2025134723号-1

资讯来源互联网,如有版权问题请联系管理员删除。