麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 擴展 > SVG > 正文

html svg生成環形進度條的實現方法

2024-09-06 19:57:12
字體:
來源:轉載
供稿:網友

之前在項目中遇到一個環形進度條的需求,要求能實時更新進度,腦海中瞬間便蹦出css,svg,canvas3中方案,對于3種方案個人更偏向于svg,用法簡單,代碼量也很少,同時也便于實時控制。具體效果如下圖:

代碼非常簡單:

<svg width="150px" height="150px" class="svg">    <circle r="70" cy="75" cx="75" stroke-width="8" stroke="#EAEFF4" stroke-linejoin="round" stroke-linecap="round" fill="none"/>    <circle class="progress" r="70" cy="75" cx="75" stroke-width="8" stroke="#1593FF" stroke-linejoin="round" stroke-linecap="round" fill="none" stroke-dashoffset="0px"  stroke-dasharray="471px" /></svg>

為了便于演示,我們先用css動畫控制:

svg {    transform: rotate(-90deg);}.progress {    animation: rotate 1500ms linear both;}@keyframes rotate {    from {        stroke-dashoffset: 471px;    }    to {        stroke-dashoffset: 0px;    }}

實現原理

實現原理非常簡單,就是應用svg的stroke-dashoffset和stroke-dasharray屬性。

stroke-dasharray

官方解釋為可控制用來描邊的點劃線的圖案范式,即定義虛線每段長度即虛線間間隔,數與數之間用逗號或者空白隔開,指定短劃線和缺口的長度。如果提供了奇數個值,則這個值的數列重復一次,從而變成偶數個值。

stroke-dashoffset

標識的是整個路徑的偏移值。

通過控制虛線的間隔與偏移值,便可以行程各種各樣的線條動畫,當然我們還可以通過js控制,如下:

let path = document.querySelector('#path');// 可獲取路徑的長度let len = path.getTotalLength();path.style.cssText = `stroke-dasharray:"${number}"`;

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 精品一区二区久久久久 | 成年免费视频黄网站在线观看 | 在线视频a | 久久国产精品电影 | www.国产一区.com| 中国av免费观看 | 亚洲成人激情av | 国产91久久久久久 | 久久久久久中文字幕 | 亚洲第一页在线观看 | 久久久久久久久久亚洲 | 羞羞的视频免费在线观看 | 久久久婷婷一区二区三区不卡 | 国产精品久久久久久久久久久久久久久 | 欧美a∨一区二区三区久久黄 | 精品亚洲视频在线 | 国产一区二区精品免费 | 精品亚洲一区二区三区 | 久久生活片 | 激情小说激情图片激情电影 | 国产亚洲精品视频中文字幕 | 国产精品av久久久久久网址 | 中文字幕免费在线观看视频 | 久久精品国产99国产精品亚洲 | 亚洲一级片免费观看 | av影院在线播放 | 精品一区二区三区免费看 | 欧美人与禽性xxxxx杂性 | 亚洲一区二区三区高清 | 小情侣嗯啊哦视频www | 日本a∨精品中文字幕在线 被啪羞羞视频在线观看 | 九草av| 亚洲精品久久久久www | 99国产精品欲a | 国产一级毛片a | www.com国产精品 | 免费黄色大片在线观看 | 国产资源在线视频 | 免费久久久久久 | 国产成人精品一区二区仙踪林 | 99ri在线|