SVG动画 -- 描边动画
代码说明:纯CSS实现,无JS
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>描边动画</title>
<style>
body { margin: 0; text-align: center; }
svg { margin-top: 200px; }
#circle {
stroke-dasharray: 120px 120px;
/*描边动画就是控制stroke-dashoffset属性值来实现的*/
stroke-dashoffset: 120px;
fill: orange;
fill-opacity: 0;
stroke: orange;
stroke-width: 2px;
animation: rotation 3s ease-in-out infinite, gradually 3s ease-in-out infinite;
animation-fill-mode: forwards;
}
#true {
fill: transparent;
stroke: #ffffff;
stroke-opacity: 0;
stroke-width: 2px;
animation: popup 3s ease-in-out infinite;
}
/*边框旋转动画声明*/
@keyframes rotation {
0% {
stroke-dashoffset: 120px;
}
20%,100% {
stroke-dashoffset: 0;
}
}
/*背景色渐进动画声明*/
@keyframes gradually {
0%, 20% {
fill-opacity: 0;
}
40%, 100% {
fill-opacity: 1;
}
}
/*符号弹出动画声明*/
@keyframes popup {
0%, 40% {
transform: scale(1);
stroke-opacity: 0;
}
50% {
transform: scale(1.1);
}
60%, 100% {
stroke-opacity: 1;
transform: scale(1);
}
}
</style>
</head>
<body>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="40" height="40">
<!-- 在画布中创建一个圆 -->
<circle id="circle" cx="20" cy="20" r="19" stroke="orange"></circle>
<!-- 创建一个对号 -->
<path id="true" d="M10,20 l6,6 16,-16" ></path>
</svg>
</body>
</html>
效果图:

这里面的代码片段如果有不认识的不要急,接下来我会分享一些SVG常用的一些属性 注:这个动画还是比较简单的,我做这个动画的难点主要是在动画分时间片运作我这里的解决方案是统一一个动画时间,然后在动画声明那里将时间片分隔开如果你有更好地解决方案欢迎在评论区分享你的经验
SVG动画 -- 描边动画的更多相关文章
- 纯CSS实现帅气的SVG路径描边动画效果(转载)
本文转载自: 纯CSS实现帅气的SVG路径描边动画效果
- SVG实现描边动画
说起SVG,我是恨它又爱它,恨它是因为刚开始接触的时候自己傻B地想用代码去写它,其实在web上我们用它做交互也只是用了几个常用的特性而已,其他的标签知道这么一回事就成了,其实说白了它就是一种图片格式, ...
- svg文字描边动画
svg动画在网页中是经常见到的,svg动画使得网页看起来清新美观 任何不规则图形都可以由svg绘制完成,当然也包括文字,文字本身就可以看作一个不规则图形
- 使用snapjs实现svg路径描边动画
一,snap.svg插件在近几天,突然接到一个需求,内容是要在网页上写一个路径的动画,还需要可以随意控制动画的速度,开始于结束,本来是一个图片可以解决的问题,结果就这样变难了呀,在网上查一会之后,突然 ...
- anime.js 实战:实现一个带有描边动画效果的复选框
在网页或者是APP的开发中,动画运用得当可以起到锦上添花的作用.正确使用动画,不但可以有助于用户理解交互的作用,还可以大大提高网页应用的魅力和使用体验.并且在现在的网页开发中,动画已经成为了一个设计的 ...
- SVG描边动画原理
SVG描边动画原理其实很简单,主要利用以下两个属性 stroke-dasharray 制作虚线,使得黑白相间, stroke-dashoffset 使得虚线向开头偏移,这里的1500不精确,是我随便取 ...
- SVG描边动画实现过程
准备工具:Adobe AI+PS 1.确定SVG画布的大小,在PS中切出需要描边效果的区域,以此区域的大小做为SVG容器的大小. 2.将PS中切好的图片直接拖拽到AI中 3.使用AI中的钢 ...
- SVG的路径动画效果
使用SVG animateMotion实现的一个动画路径效果,相关代码如下. 在线调试唯一地址:http://www.gbtags.com/gb/debug/c88f4099-5056-4ad7-af ...
- 超级强大的SVG SMIL animation动画详解
本文花费精力惊人,具有先驱前瞻性,转载规则以及申明见文末,当心予以追究.本文地址:http://www.zhangxinxu.com/wordpress/?p=4333 //zxx: 本文的SVG在有 ...
随机推荐
- 关于文件与文件系统的压缩与打包命令-Linux(笔记)
1.gzip : 压缩命令 gzip [-cdtv#] 文件名称 (后缀为.gz) -c :将压缩的数据输出到屏幕上,可通过数据流重定向处理 -d : 解压缩的參数 -v : 能够显示源文件/压缩文件 ...
- HTML的常用标签和表格
拼接多个网页
- 【转载】一张“神图”看懂单机/集群/热备/磁盘阵列(RAID)
单机部署(stand-alone):只有一个饮水机提供服务,服务只部署一份 集群部署(cluster):有多个饮水机同时提供服务,服务冗余部署,每个冗余的服务都对外提供服务,一个服务挂掉时依然可用 热 ...
- long long , __int64 范围
VC的64位整数 分别叫做__int64与unsigned __int64,其范 围分别是[-2^63, 2^63)与[0,2^64),即-9223372036854775808~9223372036 ...
- 关于Android滑动冲突的解决方法(二)
之前的一遍学习笔记主要就Android滑动冲突中,在不同方向的滑动所造成冲突进行了了解,这样的冲突非常easy理解,当然也非常easy解决.今天,就同方向的滑动所造成的冲突进行一下了解,这里就先以垂直 ...
- 写码时应该缩进使用 tab 还是空格?
对于程序员来说,其实Tab和空格远远不只是“立场”问题那么简单. 在不同的编辑器里tab的长度可能不一致,所以在一个编辑器里用tab设置缩进后,在其它编辑器里看可能缩进就乱了.空格不会出现这个问题,因 ...
- 2016/06/09 ThinkPHP3.2.3使用分页
效果图:
- VUE 之 JS指令
1.v-text的用法: 2.v-html 3.v-for 4.v-if , v-else if ,v-else v-if 每次生成都只有一个标签,即符合条件的标签. 5.v-show v-show ...
- Mac版idea使用总结
1.设置文档注释快捷键:快捷键设置里搜索 Fix doc comment 2.IDEA不显示项目project视图(转载于 https://blog.csdn.net/oyimiyangguang12 ...
- Latex 5: LaTeX资料下载
转: LaTeX资料下载 最全latex资料下载 LaTeX命令速查手册1