用svg实现一个环形进度条

简介: 用svg实现一个环形进度条

svg实现环形进度条需要用到的知识:

1、会使用path的d属性画一个圆环

//用svg的path元素的A命令画圆
<path
    d="
        M cx cy
        m 0 -r 
        a r r 0 1 0 0 2r 
        a r r 0 1 0 0 -2r"
>
></path>
//cx cy起点   r  半径

2、熟悉stroke,stroke-linecap,stroke-width,stroke-dasharray、stroke-dashoffset

 

话不多说,直接上代码

<div style="width: 200px;height: 200px;">
    <svg viewBox="0 0 100 100">
        <path
            d="M 50 50 m -40 0 a 40 40 0 1 0 80 0  a 40 40 0 1 0 -80 0"
            fill="none"
            stroke="#e5e9f2"
            stroke-width="5">
        ></path>
        <path
            d="M 50 50 m -40 0 a 40 40 0 1 0 80 0  a 40 40 0 1 0 -80 0"
            fill="none"
            stroke="#20a0ff"
            stroke-linecap="round"
            class="my-svg-path"
            transform="rotate(90,50,50)"
            stroke-width="5">
        </path>
    </svg>
</div>
.my-svg-path{
    stroke-dasharray: 252.2px, 252.2px;
    stroke-dashoffset: 22px;
    transition: stroke-dashoffset 0.6s ease 0s, stroke 0.6s ease 0s;
    transform: rotateZ(90deg);
    transform-origin: 50% 50%;
}

效果:


相关文章
|
前端开发
CSS:实现background-image背景图片全屏铺满自适应
CSS:实现background-image背景图片全屏铺满自适应
2275 0
|
前端开发
【CSS】background-image背景图片全屏铺满自适应
【CSS】background-image背景图片全屏铺满自适应
150 0
|
前端开发
CSS背景图片自适应大小
CSS背景图片自适应大小
106 0
CSS3文本居中显示、圆形圆角绘制、立体阴影效果设置实例演示
CSS3文本居中显示、圆形圆角绘制、立体阴影效果设置实例演示
131 0
|
前端开发
CSS——用less绘制渐变动画
用less绘制渐变动画
199 0
|
前端开发
你可以学会的svg动画
你可以学会的svg动画
|
XML 前端开发 数据格式
CSS & SVG foreignObject 实现文字镂空波浪动画
CSS & SVG foreignObject 实现文字镂空波浪动画
CSS & SVG foreignObject 实现文字镂空波浪动画
|
前端开发 JavaScript
利用 SVG 和 CSS3 实现有趣的边框动画
今天我们来探索一下Carl Philipe Brenner的网站上一个微妙而有趣的动画效果。当鼠标经过网格元素时,会有一个微妙的动画发生——网格元素变得透明,每条边有个顺时针的动画,创造了非常好的效果。这种效果是通过JS给span标签的宽或者高做了动画。我们待会会用SVG和CSS渐变来完成。注意,这个技术还是实验性的。
293 0
利用 SVG 和 CSS3 实现有趣的边框动画
|
数据采集 数据挖掘 Python
一篇文章带你了解SVG 渐变知识
一篇文章带你了解SVG 渐变知识
929 0