搜索 SVG 图标
withicons-halloweensearch
来自 with icons Halloween 开源图标集,矢量 SVG 可无损缩放到任意尺寸,支持在线改色、复制 React/Vue/HTML 代码。
- 图标 ID
- withicons-halloween:search
- 中文名
- 搜索
- 集合规模
- 1,000 枚
- 基础网格
- 24px
- 色彩
- 多色
- 开源协议
- MIT
- 作者
- Evergrow
withicons-halloweensearch
来自 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="SVGGTSqAdia" cx="10.5" cy="11.3" r="9.6" fx="8.2" fy="7.9" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#fff6e2"/><stop offset=".5" stop-color="#fff6e2"/><stop offset="1" stop-color="#fff1b8"/></radialGradient><radialGradient id="SVGLBeEXdnz" cx="12" cy="12.4" r="12" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ffb52e" stop-opacity=".36"/><stop offset=".55" stop-color="#ffb52e" stop-opacity=".16"/><stop offset="1" stop-color="#ffb52e" stop-opacity="0"/></radialGradient><linearGradient id="SVGUVsyRbUe" x1="6.9" x2="10.5" y1="10.5" y2="6.9" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff9f2e"/><stop offset="1" stop-color="#ffb52e"/></linearGradient></defs><path fill="url(#SVGLBeEXdnz)" d="M0 0h24v24H0Z" class="wm-deco"/><circle cx="10.65" cy="11.35" r="8" fill="#2a1642" fill-opacity=".3" class="wm-shadow"/><path stroke="#2a1642" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".3" stroke-width="2.6" d="m15.9 16.6l4.35 4.35" class="wm-shadow"/><path stroke="#1d1029" stroke-linecap="round" stroke-linejoin="round" stroke-width="3.32" d="m15.75 15.75l4.35 4.35" class="wm-a"/><path stroke="#8b55e0" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.6" d="m15.75 15.75l4.35 4.35" class="wm-a"/><path stroke="#fff6e2" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".45" stroke-width=".42" d="m17.15 16.55l2.4 2.4" class="wm-shine"/><circle cx="10.5" cy="10.5" r="8" fill="url(#SVGGTSqAdia)" stroke="#1d1029" stroke-width=".72" class="wm-k"/><path stroke="#7344c9" stroke-linecap="round" stroke-opacity=".22" stroke-width=".9" d="M6.49 16.23a7 7 0 0 0 9.74-1.72" class="wm-k"/><path stroke="#1d1029" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.32" d="M6.9 10.5a3.6 3.6 0 0 1 3.6-3.6" class="wm-shine"/><path stroke="url(#SVGUVsyRbUe)" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M6.9 10.5a3.6 3.6 0 0 1 3.6-3.6" class="wm-shine"/></g></svg>export function SearchIcon(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="SVGGTSqAdia" cx="10.5" cy="11.3" r="9.6" fx="8.2" fy="7.9" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#fff6e2"/><stop offset=".5" stop-color="#fff6e2"/><stop offset="1" stop-color="#fff1b8"/></radialGradient><radialGradient id="SVGLBeEXdnz" cx="12" cy="12.4" r="12" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ffb52e" stop-opacity=".36"/><stop offset=".55" stop-color="#ffb52e" stop-opacity=".16"/><stop offset="1" stop-color="#ffb52e" stop-opacity="0"/></radialGradient><linearGradient id="SVGUVsyRbUe" x1="6.9" x2="10.5" y1="10.5" y2="6.9" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff9f2e"/><stop offset="1" stop-color="#ffb52e"/></linearGradient></defs><path fill="url(#SVGLBeEXdnz)" d="M0 0h24v24H0Z" class="wm-deco"/><circle cx="10.65" cy="11.35" r="8" fill="#2a1642" fill-opacity=".3" class="wm-shadow"/><path stroke="#2a1642" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".3" stroke-width="2.6" d="m15.9 16.6l4.35 4.35" class="wm-shadow"/><path stroke="#1d1029" stroke-linecap="round" stroke-linejoin="round" stroke-width="3.32" d="m15.75 15.75l4.35 4.35" class="wm-a"/><path stroke="#8b55e0" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.6" d="m15.75 15.75l4.35 4.35" class="wm-a"/><path stroke="#fff6e2" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".45" stroke-width=".42" d="m17.15 16.55l2.4 2.4" class="wm-shine"/><circle cx="10.5" cy="10.5" r="8" fill="url(#SVGGTSqAdia)" stroke="#1d1029" stroke-width=".72" class="wm-k"/><path stroke="#7344c9" stroke-linecap="round" stroke-opacity=".22" stroke-width=".9" d="M6.49 16.23a7 7 0 0 0 9.74-1.72" class="wm-k"/><path stroke="#1d1029" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.32" d="M6.9 10.5a3.6 3.6 0 0 1 3.6-3.6" class="wm-shine"/><path stroke="url(#SVGUVsyRbUe)" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M6.9 10.5a3.6 3.6 0 0 1 3.6-3.6" 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="SVGGTSqAdia" cx="10.5" cy="11.3" r="9.6" fx="8.2" fy="7.9" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#fff6e2"/><stop offset=".5" stop-color="#fff6e2"/><stop offset="1" stop-color="#fff1b8"/></radialGradient><radialGradient id="SVGLBeEXdnz" cx="12" cy="12.4" r="12" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ffb52e" stop-opacity=".36"/><stop offset=".55" stop-color="#ffb52e" stop-opacity=".16"/><stop offset="1" stop-color="#ffb52e" stop-opacity="0"/></radialGradient><linearGradient id="SVGUVsyRbUe" x1="6.9" x2="10.5" y1="10.5" y2="6.9" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff9f2e"/><stop offset="1" stop-color="#ffb52e"/></linearGradient></defs><path fill="url(#SVGLBeEXdnz)" d="M0 0h24v24H0Z" class="wm-deco"/><circle cx="10.65" cy="11.35" r="8" fill="#2a1642" fill-opacity=".3" class="wm-shadow"/><path stroke="#2a1642" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".3" stroke-width="2.6" d="m15.9 16.6l4.35 4.35" class="wm-shadow"/><path stroke="#1d1029" stroke-linecap="round" stroke-linejoin="round" stroke-width="3.32" d="m15.75 15.75l4.35 4.35" class="wm-a"/><path stroke="#8b55e0" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.6" d="m15.75 15.75l4.35 4.35" class="wm-a"/><path stroke="#fff6e2" stroke-linecap="round" stroke-linejoin="round" stroke-opacity=".45" stroke-width=".42" d="m17.15 16.55l2.4 2.4" class="wm-shine"/><circle cx="10.5" cy="10.5" r="8" fill="url(#SVGGTSqAdia)" stroke="#1d1029" stroke-width=".72" class="wm-k"/><path stroke="#7344c9" stroke-linecap="round" stroke-opacity=".22" stroke-width=".9" d="M6.49 16.23a7 7 0 0 0 9.74-1.72" class="wm-k"/><path stroke="#1d1029" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.32" d="M6.9 10.5a3.6 3.6 0 0 1 3.6-3.6" class="wm-shine"/><path stroke="url(#SVGUVsyRbUe)" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M6.9 10.5a3.6 3.6 0 0 1 3.6-3.6" class="wm-shine"/></g>`;
</script>.search {
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%22SVGGTSqAdia%22%20cx%3D%2210.5%22%20cy%3D%2211.3%22%20r%3D%229.6%22%20fx%3D%228.2%22%20fy%3D%227.9%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23fff6e2%22%2F%3E%3Cstop%20offset%3D%22.5%22%20stop-color%3D%22%23fff6e2%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23fff1b8%22%2F%3E%3C%2FradialGradient%3E%3CradialGradient%20id%3D%22SVGLBeEXdnz%22%20cx%3D%2212%22%20cy%3D%2212.4%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.16%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23ffb52e%22%20stop-opacity%3D%220%22%2F%3E%3C%2FradialGradient%3E%3ClinearGradient%20id%3D%22SVGUVsyRbUe%22%20x1%3D%226.9%22%20x2%3D%2210.5%22%20y1%3D%2210.5%22%20y2%3D%226.9%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23ff9f2e%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23ffb52e%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20fill%3D%22url(%23SVGLBeEXdnz)%22%20d%3D%22M0%200h24v24H0Z%22%20class%3D%22wm-deco%22%2F%3E%3Ccircle%20cx%3D%2210.65%22%20cy%3D%2211.35%22%20r%3D%228%22%20fill%3D%22%232a1642%22%20fill-opacity%3D%22.3%22%20class%3D%22wm-shadow%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.6%22%20d%3D%22m15.9%2016.6l4.35%204.35%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.32%22%20d%3D%22m15.75%2015.75l4.35%204.35%22%20class%3D%22wm-a%22%2F%3E%3Cpath%20stroke%3D%22%238b55e0%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222.6%22%20d%3D%22m15.75%2015.75l4.35%204.35%22%20class%3D%22wm-a%22%2F%3E%3Cpath%20stroke%3D%22%23fff6e2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-opacity%3D%22.45%22%20stroke-width%3D%22.42%22%20d%3D%22m17.15%2016.55l2.4%202.4%22%20class%3D%22wm-shine%22%2F%3E%3Ccircle%20cx%3D%2210.5%22%20cy%3D%2210.5%22%20r%3D%228%22%20fill%3D%22url(%23SVGGTSqAdia)%22%20stroke%3D%22%231d1029%22%20stroke-width%3D%22.72%22%20class%3D%22wm-k%22%2F%3E%3Cpath%20stroke%3D%22%237344c9%22%20stroke-linecap%3D%22round%22%20stroke-opacity%3D%22.22%22%20stroke-width%3D%22.9%22%20d%3D%22M6.49%2016.23a7%207%200%200%200%209.74-1.72%22%20class%3D%22wm-k%22%2F%3E%3Cpath%20stroke%3D%22%231d1029%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222.32%22%20d%3D%22M6.9%2010.5a3.6%203.6%200%200%201%203.6-3.6%22%20class%3D%22wm-shine%22%2F%3E%3Cpath%20stroke%3D%22url(%23SVGUVsyRbUe)%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221.6%22%20d%3D%22M6.9%2010.5a3.6%203.6%200%200%201%203.6-3.6%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%22SVGGTSqAdia%22%20cx%3D%2210.5%22%20cy%3D%2211.3%22%20r%3D%229.6%22%20fx%3D%228.2%22%20fy%3D%227.9%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23fff6e2%22%2F%3E%3Cstop%20offset%3D%22.5%22%20stop-color%3D%22%23fff6e2%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23fff1b8%22%2F%3E%3C%2FradialGradient%3E%3CradialGradient%20id%3D%22SVGLBeEXdnz%22%20cx%3D%2212%22%20cy%3D%2212.4%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.16%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23ffb52e%22%20stop-opacity%3D%220%22%2F%3E%3C%2FradialGradient%3E%3ClinearGradient%20id%3D%22SVGUVsyRbUe%22%20x1%3D%226.9%22%20x2%3D%2210.5%22%20y1%3D%2210.5%22%20y2%3D%226.9%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23ff9f2e%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23ffb52e%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20fill%3D%22url(%23SVGLBeEXdnz)%22%20d%3D%22M0%200h24v24H0Z%22%20class%3D%22wm-deco%22%2F%3E%3Ccircle%20cx%3D%2210.65%22%20cy%3D%2211.35%22%20r%3D%228%22%20fill%3D%22%232a1642%22%20fill-opacity%3D%22.3%22%20class%3D%22wm-shadow%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.6%22%20d%3D%22m15.9%2016.6l4.35%204.35%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.32%22%20d%3D%22m15.75%2015.75l4.35%204.35%22%20class%3D%22wm-a%22%2F%3E%3Cpath%20stroke%3D%22%238b55e0%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222.6%22%20d%3D%22m15.75%2015.75l4.35%204.35%22%20class%3D%22wm-a%22%2F%3E%3Cpath%20stroke%3D%22%23fff6e2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-opacity%3D%22.45%22%20stroke-width%3D%22.42%22%20d%3D%22m17.15%2016.55l2.4%202.4%22%20class%3D%22wm-shine%22%2F%3E%3Ccircle%20cx%3D%2210.5%22%20cy%3D%2210.5%22%20r%3D%228%22%20fill%3D%22url(%23SVGGTSqAdia)%22%20stroke%3D%22%231d1029%22%20stroke-width%3D%22.72%22%20class%3D%22wm-k%22%2F%3E%3Cpath%20stroke%3D%22%237344c9%22%20stroke-linecap%3D%22round%22%20stroke-opacity%3D%22.22%22%20stroke-width%3D%22.9%22%20d%3D%22M6.49%2016.23a7%207%200%200%200%209.74-1.72%22%20class%3D%22wm-k%22%2F%3E%3Cpath%20stroke%3D%22%231d1029%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222.32%22%20d%3D%22M6.9%2010.5a3.6%203.6%200%200%201%203.6-3.6%22%20class%3D%22wm-shine%22%2F%3E%3Cpath%20stroke%3D%22url(%23SVGUVsyRbUe)%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221.6%22%20d%3D%22M6.9%2010.5a3.6%203.6%200%200%201%203.6-3.6%22%20class%3D%22wm-shine%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center / contain;
}单文件 CSS 即可播放,无需任何依赖;描画动效仅对描边类图标生效。
透明度往复渐变,适合状态提示与在线指示。
.icon-search {
animation: icon-breathe 1.8s ease-in-out infinite;
}
@keyframes icon-breathe {
0%, 100% { opacity: 1; }
50% { opacity: 0.35; }
}匀速循环旋转,适合加载中场景。
.icon-search {
animation: icon-spin 1.6s linear infinite;
}
@keyframes icon-spin {
to { transform: rotate(360deg); }
}线条从无到有依次绘出,适合线性图标与首屏引导。
.icon-search path {
stroke-dasharray: 120;
animation: icon-draw 1.2s ease forwards;
}
@keyframes icon-draw {
from { stroke-dashoffset: 120; }
to { stroke-dashoffset: 0; }
}对源文件的客观技术指标,供工程侧评估引用方式。
文件体积
2.06 KB
2,107 字节
viewBox
0 0 24 24
矢量坐标系
图元总数
10
<path> ×8
风格
多色填充
描边可随字号加粗
同时含 width/height 与 viewBox:可以只保留 viewBox,让图标跟随容器自适应缩放。 文件体积 2.06 KB(2,107 字节),图元 10 个,风格为多色填充。
关于 搜索 图标的下载、商用与改色。
它是 with icons Halloween(withicons-halloween)开源图标集中的 search 图标,多色填充,viewBox 为 0 0 24 24,文件仅 2.06 KB,矢量格式可无损缩放到任意尺寸。
点击「下载与导出」中的 SVG 源文件按钮保存矢量文件;也可以按 512 / 256 / 128 / 64 / 32 / 16px 预设导出 PNG,或在输入框填 16~1024 之间的任意尺寸。需要 iOS、Android 全套尺寸时,用素材包生成器一键打包。
该图标采用 MIT(MIT) 开源协议,通常允许在遵守协议的前提下免费使用,常见要求是保留作者版权声明。商用前建议阅读协议原文确认。
在「预览与场景」的色板中切换颜色,三底色与全部场景会实时跟随;点击任一相近图标可打开预览弹层,复制对应颜色的 SVG 源码或 PNG。也可以复制 SVG 源码后自行修改 fill 值。