<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          實(shí)例:純CSS3實(shí)現(xiàn)餅狀圖

          共 1487字,需瀏覽 3分鐘

           ·

          2021-01-18 18:43


          來源 |?http://www.fly63.com/article/detial/712


          有一些網(wǎng)頁中,有時(shí)候會(huì)碰到餅狀圖的需求,比如統(tǒng)計(jì)圖表,進(jìn)度指示器,定時(shí)器等,實(shí)現(xiàn)方式也是各種各樣,現(xiàn)在也有不少現(xiàn)成的js庫,可以直接拿來使用,方便很多。這里筆者為大家演示一種純css實(shí)現(xiàn)餅狀圖效果的方法。
          .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);}


          實(shí)現(xiàn)效果如圖所示:?

          改變r(jià)otate的角度就可以實(shí)現(xiàn)不同大小的餅狀圖效果,但是親手試驗(yàn)的讀者會(huì)發(fā)現(xiàn),旋轉(zhuǎn)50%以上并不能呈現(xiàn)出理想的效果,而是會(huì)呈現(xiàn)出如下效果:?

          要解決這個(gè)問題,改變偽元素的背景色就可以解決,當(dāng)需要展示的區(qū)域大于一半時(shí),改變背景色就OK。?下面筆者展示一個(gè)簡單的進(jìn)度指示器示例,讀者親手試驗(yàn)的話,會(huì)發(fā)現(xiàn)一個(gè)不斷變化的餅狀圖效果。
          .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;}}

          讀者最好親手試驗(yàn),嘗試修改其中的屬性,理解其中的意思,只有理解了才能做出更有趣的東西。如果讀者對svg感興趣的話,可以嘗試使用svg來實(shí)現(xiàn)餅狀圖,svg實(shí)現(xiàn)的效果要更加豐富多彩些。


          本文完?


          最后


          • 歡迎加我微信(winty230),拉你進(jìn)技術(shù)群,長期交流學(xué)習(xí)...

          • 歡迎關(guān)注「前端Q」,認(rèn)真學(xué)前端,做個(gè)專業(yè)的技術(shù)人...

          點(diǎn)個(gè)在看支持我吧
          瀏覽 77
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  后入视频网站 | 免费观看黄色视频网站在线观看 | 久操中文视频 | 国产精品第一 | 91看成品人视频 |