activity SVG 图标
withicons-halloweenactivity
来自 with icons Halloween 开源图标集,矢量 SVG 可无损缩放到任意尺寸,支持在线改色、复制 React/Vue/HTML 代码。
- 图标 ID
- withicons-halloween:activity
- 中文名
- —
- 集合规模
- 1,000 枚
- 基础网格
- 24px
- 色彩
- 多色
- 开源协议
- MIT
- 作者
- Evergrow
withicons-halloweenactivity
来自 with icons Halloween 开源图标集,矢量 SVG 可无损缩放到任意尺寸,支持在线改色、复制 React/Vue/HTML 代码。
SVG 矢量源文件,或 PNG 按 16~512 预设与 16~1024 自定义尺寸导出,任意尺寸边缘锐利。
PNG 由矢量源实时渲染,任意尺寸边缘锐利无锯齿;下载与预览均免费,无需注册。
切换预览颜色后,下方三底色、真实界面场景与各尺寸渲染会实时跟随。
内联 SVG、React、Vue 与 CSS mask 四种主流引用方式,代码基于当前源文件生成,复制即用。
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><g fill="none"><defs><radialGradient id="SVGfGNC8ZYY" cx="12" cy="13.12" r="11.22" fx="9.28" fy="9.48" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff9f2e"/><stop offset=".45" stop-color="#ff9f2e"/><stop offset="1" stop-color="#e5530f"/></radialGradient><radialGradient id="SVGOafqlbAp" cx="12" cy="12.7" r="12" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ffb52e" stop-opacity=".36"/><stop offset=".55" stop-color="#ffb52e" stop-opacity=".162"/><stop offset="1" stop-color="#ffb52e" stop-opacity="0"/></radialGradient></defs><path fill="url(#SVGOafqlbAp)" d="M0 0h24v24H0Z" class="wm-deco"/><path stroke="#2a1642" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".3" stroke-width="2.3" d="M3.65 12.85h3l3-7l5 14l3-7h3" class="wm-shadow"/><path stroke="#1d1029" stroke-linecap="round" stroke-linejoin="round" stroke-width="3.02" d="M3.5 12h3l3-7l5 14l3-7h3" class="wm-k"/><path stroke="url(#SVGfGNC8ZYY)" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.58" d="M3.5 12h3l3-7l5 14l3-7h3" class="wm-k"/><path stroke="#fff6e2" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".55" stroke-width=".34" d="M4.1 11.62h2m.5-.82l2.1-4.9m.94.63l3.75 10.5m1.21.77l1.95-4.55m1.35-1.63h2" class="wm-shine"/></g></svg>export function ActivityIcon(props: React.SVGProps<SVGSVGElement>) {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1em"
height="1em"
viewBox="0 0 24 24"
fill="currentColor"
{...props}
dangerouslySetInnerHTML={{ __html: `<g fill="none"><defs><radialGradient id="SVGfGNC8ZYY" cx="12" cy="13.12" r="11.22" fx="9.28" fy="9.48" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff9f2e"/><stop offset=".45" stop-color="#ff9f2e"/><stop offset="1" stop-color="#e5530f"/></radialGradient><radialGradient id="SVGOafqlbAp" cx="12" cy="12.7" r="12" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ffb52e" stop-opacity=".36"/><stop offset=".55" stop-color="#ffb52e" stop-opacity=".162"/><stop offset="1" stop-color="#ffb52e" stop-opacity="0"/></radialGradient></defs><path fill="url(#SVGOafqlbAp)" d="M0 0h24v24H0Z" class="wm-deco"/><path stroke="#2a1642" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".3" stroke-width="2.3" d="M3.65 12.85h3l3-7l5 14l3-7h3" class="wm-shadow"/><path stroke="#1d1029" stroke-linecap="round" stroke-linejoin="round" stroke-width="3.02" d="M3.5 12h3l3-7l5 14l3-7h3" class="wm-k"/><path stroke="url(#SVGfGNC8ZYY)" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.58" d="M3.5 12h3l3-7l5 14l3-7h3" class="wm-k"/><path stroke="#fff6e2" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".55" stroke-width=".34" d="M4.1 11.62h2m.5-.82l2.1-4.9m.94.63l3.75 10.5m1.21.77l1.95-4.55m1.35-1.63h2" class="wm-shine"/></g>` }}
/>
);
}<template>
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24" fill="currentColor" v-html="body"></svg>
</template>
<script setup>
const body = `<g fill="none"><defs><radialGradient id="SVGfGNC8ZYY" cx="12" cy="13.12" r="11.22" fx="9.28" fy="9.48" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff9f2e"/><stop offset=".45" stop-color="#ff9f2e"/><stop offset="1" stop-color="#e5530f"/></radialGradient><radialGradient id="SVGOafqlbAp" cx="12" cy="12.7" r="12" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ffb52e" stop-opacity=".36"/><stop offset=".55" stop-color="#ffb52e" stop-opacity=".162"/><stop offset="1" stop-color="#ffb52e" stop-opacity="0"/></radialGradient></defs><path fill="url(#SVGOafqlbAp)" d="M0 0h24v24H0Z" class="wm-deco"/><path stroke="#2a1642" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".3" stroke-width="2.3" d="M3.65 12.85h3l3-7l5 14l3-7h3" class="wm-shadow"/><path stroke="#1d1029" stroke-linecap="round" stroke-linejoin="round" stroke-width="3.02" d="M3.5 12h3l3-7l5 14l3-7h3" class="wm-k"/><path stroke="url(#SVGfGNC8ZYY)" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.58" d="M3.5 12h3l3-7l5 14l3-7h3" class="wm-k"/><path stroke="#fff6e2" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".55" stroke-width=".34" d="M4.1 11.62h2m.5-.82l2.1-4.9m.94.63l3.75 10.5m1.21.77l1.95-4.55m1.35-1.63h2" class="wm-shine"/></g>`;
</script>.activity {
width: 1em;
height: 1em;
background-color: currentColor;
-webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221em%22%20height%3D%221em%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cg%20fill%3D%22none%22%3E%3Cdefs%3E%3CradialGradient%20id%3D%22SVGfGNC8ZYY%22%20cx%3D%2212%22%20cy%3D%2213.12%22%20r%3D%2211.22%22%20fx%3D%229.28%22%20fy%3D%229.48%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23ff9f2e%22%2F%3E%3Cstop%20offset%3D%22.45%22%20stop-color%3D%22%23ff9f2e%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23e5530f%22%2F%3E%3C%2FradialGradient%3E%3CradialGradient%20id%3D%22SVGOafqlbAp%22%20cx%3D%2212%22%20cy%3D%2212.7%22%20r%3D%2212%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23ffb52e%22%20stop-opacity%3D%22.36%22%2F%3E%3Cstop%20offset%3D%22.55%22%20stop-color%3D%22%23ffb52e%22%20stop-opacity%3D%22.162%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23ffb52e%22%20stop-opacity%3D%220%22%2F%3E%3C%2FradialGradient%3E%3C%2Fdefs%3E%3Cpath%20fill%3D%22url(%23SVGOafqlbAp)%22%20d%3D%22M0%200h24v24H0Z%22%20class%3D%22wm-deco%22%2F%3E%3Cpath%20stroke%3D%22%232a1642%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-opacity%3D%22.3%22%20stroke-width%3D%222.3%22%20d%3D%22M3.65%2012.85h3l3-7l5%2014l3-7h3%22%20class%3D%22wm-shadow%22%2F%3E%3Cpath%20stroke%3D%22%231d1029%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%223.02%22%20d%3D%22M3.5%2012h3l3-7l5%2014l3-7h3%22%20class%3D%22wm-k%22%2F%3E%3Cpath%20stroke%3D%22url(%23SVGfGNC8ZYY)%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221.58%22%20d%3D%22M3.5%2012h3l3-7l5%2014l3-7h3%22%20class%3D%22wm-k%22%2F%3E%3Cpath%20stroke%3D%22%23fff6e2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-opacity%3D%22.55%22%20stroke-width%3D%22.34%22%20d%3D%22M4.1%2011.62h2m.5-.82l2.1-4.9m.94.63l3.75%2010.5m1.21.77l1.95-4.55m1.35-1.63h2%22%20class%3D%22wm-shine%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center / contain;
mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221em%22%20height%3D%221em%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cg%20fill%3D%22none%22%3E%3Cdefs%3E%3CradialGradient%20id%3D%22SVGfGNC8ZYY%22%20cx%3D%2212%22%20cy%3D%2213.12%22%20r%3D%2211.22%22%20fx%3D%229.28%22%20fy%3D%229.48%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23ff9f2e%22%2F%3E%3Cstop%20offset%3D%22.45%22%20stop-color%3D%22%23ff9f2e%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23e5530f%22%2F%3E%3C%2FradialGradient%3E%3CradialGradient%20id%3D%22SVGOafqlbAp%22%20cx%3D%2212%22%20cy%3D%2212.7%22%20r%3D%2212%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23ffb52e%22%20stop-opacity%3D%22.36%22%2F%3E%3Cstop%20offset%3D%22.55%22%20stop-color%3D%22%23ffb52e%22%20stop-opacity%3D%22.162%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23ffb52e%22%20stop-opacity%3D%220%22%2F%3E%3C%2FradialGradient%3E%3C%2Fdefs%3E%3Cpath%20fill%3D%22url(%23SVGOafqlbAp)%22%20d%3D%22M0%200h24v24H0Z%22%20class%3D%22wm-deco%22%2F%3E%3Cpath%20stroke%3D%22%232a1642%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-opacity%3D%22.3%22%20stroke-width%3D%222.3%22%20d%3D%22M3.65%2012.85h3l3-7l5%2014l3-7h3%22%20class%3D%22wm-shadow%22%2F%3E%3Cpath%20stroke%3D%22%231d1029%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%223.02%22%20d%3D%22M3.5%2012h3l3-7l5%2014l3-7h3%22%20class%3D%22wm-k%22%2F%3E%3Cpath%20stroke%3D%22url(%23SVGfGNC8ZYY)%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221.58%22%20d%3D%22M3.5%2012h3l3-7l5%2014l3-7h3%22%20class%3D%22wm-k%22%2F%3E%3Cpath%20stroke%3D%22%23fff6e2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-opacity%3D%22.55%22%20stroke-width%3D%22.34%22%20d%3D%22M4.1%2011.62h2m.5-.82l2.1-4.9m.94.63l3.75%2010.5m1.21.77l1.95-4.55m1.35-1.63h2%22%20class%3D%22wm-shine%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center / contain;
}单文件 CSS 即可播放,无需任何依赖;描画动效仅对描边类图标生效。
透明度往复渐变,适合状态提示与在线指示。
.icon-activity {
animation: icon-breathe 1.8s ease-in-out infinite;
}
@keyframes icon-breathe {
0%, 100% { opacity: 1; }
50% { opacity: 0.35; }
}匀速循环旋转,适合加载中场景。
.icon-activity {
animation: icon-spin 1.6s linear infinite;
}
@keyframes icon-spin {
to { transform: rotate(360deg); }
}线条从无到有依次绘出,适合线性图标与首屏引导。
.icon-activity path {
stroke-dasharray: 120;
animation: icon-draw 1.2s ease forwards;
}
@keyframes icon-draw {
from { stroke-dashoffset: 120; }
to { stroke-dashoffset: 0; }
}对源文件的客观技术指标,供工程侧评估引用方式。
文件体积
1.33 KB
1,363 字节
viewBox
0 0 24 24
矢量坐标系
图元总数
5
<path> ×5
风格
多色填充
描边可随字号加粗
同时含 width/height 与 viewBox:可以只保留 viewBox,让图标跟随容器自适应缩放。 文件体积 1.33 KB(1,363 字节),图元 5 个,风格为多色填充。
关于 activity 图标的下载、商用与改色。
它是 with icons Halloween(withicons-halloween)开源图标集中的 activity 图标,多色填充,viewBox 为 0 0 24 24,文件仅 1.33 KB,矢量格式可无损缩放到任意尺寸。
点击「下载与导出」中的 SVG 源文件按钮保存矢量文件;也可以按 512 / 256 / 128 / 64 / 32 / 16px 预设导出 PNG,或在输入框填 16~1024 之间的任意尺寸。需要 iOS、Android 全套尺寸时,用素材包生成器一键打包。
该图标采用 MIT(MIT) 开源协议,通常允许在遵守协议的前提下免费使用,常见要求是保留作者版权声明。商用前建议阅读协议原文确认。
在「预览与场景」的色板中切换颜色,三底色与全部场景会实时跟随;点击任一相近图标可打开预览弹层,复制对应颜色的 SVG 源码或 PNG。也可以复制 SVG 源码后自行修改 fill 值。