SVG中stroke-dasharray及stroke-dashoffset属性

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                       

stroke-dasharray属性用来设置描边的点划线的图案范式。就是设置实线和虚线的宽度

比如:
stroke-dasharray: 50 20;
效果就是:
这里写图片描述
50和20分别对应了实线和虚线的长度

stroke-dashoffset则指定了dash模式到路径开始的距离,就是实线虚线绘制的起点距路径开始的距离

比如:
stroke-dashoffset: 30;
效果:
这里写图片描述
由于向左移动30像素,这样左边的实线就跟虚线一样长了。

我们可以设置stroke-dashoffsetstroke-dasharray相同的值实现“画线”的效果:
代码:

<style>path{    stroke-dasharray: 1000;    stroke-dashoffset: 1000;    animation: draw 5s ease 3;}@keyframes draw{    0%{        stroke-dashoffset: 1000;    }    100%{        stroke-dashoffset: 0;    }}</style><path d="M153 334C153 334 151 334 151 334C151 339 153 344 156 344C164 344 171 339 171 334C171 322 164 314 156 314C142 314 131 322 131 334C131 350 142 364 156 364C175 364 191 350 191 334C191 311 175 294 156 294C131 294 111 311 111 334C111 361 131 384 156 384C186 384 211 361 211 334C211 300 186 274 156 274"style="fill:white;stroke:red;stroke-width:2"/>
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

由于实线起始距离从1000变为0,所以效果就是线在“绘图”一样。

效果:
这里写图片描述

关于stroke还有很多属性,参考:https://developer.mozilla.org/zh-CN/docs/Web/SVG/Tutorial/Fills_and_Strokes

本文参考:https://wcc723.github.io/svg/2014/06/15/svg-css-stroke-animation/

https://css-tricks.com/almanac/properties/s/stroke-dasharray/

https://css-tricks.com/almanac/properties/s/stroke-linecap/

https://stackoverflow.com/questions/46944523/how-to-change-start-point-of-svg-line-animation

           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_43682817/article/details/84106912
今日推荐