Tabler Icons:6184 个免费 SVG 图标,怎么一次装进你的项目?
2026/9/16 17:26:36 网站建设 项目流程

Tabler Icons:6184 个免费 SVG 图标,怎么一次装进你的项目?

【免费下载链接】tabler-iconsA set of over 6100 free MIT-licensed high-quality SVG icons for you to use in your web projects.项目地址: https://gitcode.com/GitHub_Trending/ta/tabler-icons

先说结论:设计评审里"图标不统一"的问题,不用靠人肉对齐解决。Tabler Icons 是一个免费的 MIT 协议 SVG 图标库,6184 个图标全部在同一套 24×24 网格、2px 描边规格下绘制,MIT 协议意味着商用、闭源都免费。它按框架拆好了一批 npm 包,一次命令装进项目,导入即渲染,颜色还能跟随文字自动变。

下面按实际会遇到的场景讲:怎么判断它合不合适、怎么装、装完怎么调、静态页图标太多怎么办。

设计评审里常见的图标问题

改版一个中后台项目,图标需求一列出来就是几十上百个。自己一张张找的结果通常是三个:不同网站找的图标线宽粗细不一,混在一套界面上风格打架;有的网站版权说不清,上了线之后心里没底;找齐了还要手动改尺寸、改颜色,每张 SVG 都要动一遍。

Tabler Icons 的思路是把这三件事一次性掐掉:所有图标由同一套规格约束,风格天然一致;协议写死是 MIT;颜色走currentColor,改一处 CSS 全局生效。

为什么选它:三个理由先过一遍

规格统一,成套使用不打架。每个图标都是 24×24 视口、2px 描边、圆头线帽。可以理解为同一把尺子刻出来的:随便挑十几个混用,粗细和圆角都对得上,不需要设计师逐张挑毛病。

协议干净。整个仓库是 MIT License,商用、闭源都免费,分发时保留许可证声明即可,没有隐藏收费。

框架覆盖全,不用自己封装。仓库 packages/ 目录下有 14 个官方包:React、Vue、Svelte、Angular、Preact、SolidJS、Astro、React Native 各一个组件包,另有 SVG 源文件、PNG、PDF、EPS、精灵图(sprite)、webfont 几种"非组件"方案。你用什么栈就装哪个包,包名规律是@tabler/icons加框架后缀。

图标库的构成:6184 个怎么分

  • 描边风格 5130 个,在 icons/outline/ 目录,文件名就是图标名,如home.svg
  • 实心风格 1054 个,在 icons/filled/ 目录,同一图标按xxx-filled命名存放。

两种风格在同一库里,装包方式完全一样,不需要另装"实心版"。5130 + 1054 = 6184,这就是库的总规模。

另外每个图标文件头部都带tagscategory注释,根目录的 aliases.json 收录同名图标的别名,找图的时候靠标签和别名比肉眼翻快得多,官网搜索页也是按这套标签走的。

一条命令装进 React 项目

以 React 为例,安装一条命令:

npm install @tabler/icons-react

这个包基于 ES modules 构建,完全支持 tree-shaking:你 import 了哪个图标,打包产物里才带哪个,不会把 6184 个图标全塞进产物。

用起来就三步。图标名arrow-left转成Icon+ 首字母大写的驼峰形式,然后在 JSX 里直接写:

import { IconArrowLeft } from '@tabler/icons-react'; <IconArrowLeft />

打开页面,一个 24×24 的左箭头就在了。默认颜色是currentColor,会跟随文字颜色——也就是说深浅色模式不用单独处理图标,改主题色它就跟着变。这是装完之后最快的一次正反馈。

装完之后:三个属性管大小、颜色、线宽

组件接受sizecolorstroke三个常用属性,默认值分别是 24、currentColor、2。想让箭头变大变红:

<IconArrowLeft color="red" size={48} />

设计师要是说"线宽不合适",不用重画:组件里把stroke传成 1.5 之类;纯 HTML 场景改 CSS 的stroke-width即可。一个值调下来,整库粗细统一变化,这是这套规格统一带来的直接好处。

静态页图标太多:浏览器只请求一次精灵图

页面要放几十个图标,逐个<img>引 SVG 会触发几十次请求。这种情况换 sprite 方案:装@tabler/icons-sprite包,页面里用<use>引用精灵图里的锚点:

<svg width="24" height="24"> <use xlink:href="tabler-sprite.svg#tabler-heart" /> </svg>

浏览器只下载一次tabler-sprite.svg,后面所有图标都在本地渲染。另一条路是 webfont 方案:装@tabler/icons-webfont后像用字体一样写<i class="ti ti-heart"></i>,图标走字体文件加载,适合完全不想碰 SVG 标签的老项目。

没有构建流程的项目怎么办

SVG 本质是文本文件。把 icons/outline/ 下需要的.svg拷进项目静态目录,然后按 docs/icons/svg.mdx 的写法内联进 HTML,就能用 CSS 控制尺寸、颜色和线宽:

.icon-tabler { color: red; width: 32px; stroke-width: 1.25; }

不需要装任何依赖,一个编辑器就能开工。想要原始文件但不想逐个拷,可以整库克隆:

git clone https://gitcode.com/GitHub_Trending/ta/tabler-icons

下一步

打开 docs/icons/,把对应你框架的那一章完整过一遍(安装命令、属性表都在里面),顺手挑 10 个你页面马上要用的图标,把名字记下来再写 import,比边写边找效率高。库本身免费商用,分发时保留 MIT 许可证声明就行。

【免费下载链接】tabler-iconsA set of over 6100 free MIT-licensed high-quality SVG icons for you to use in your web projects.项目地址: https://gitcode.com/GitHub_Trending/ta/tabler-icons

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询