Pixiv - KiraraShss
535 字
3 分钟
关于字体图标的误解
欢迎来到我的博客!
今天学到了什么
我大概理解了,写上这个iconfont icon-QQ,就相当于在span标签内写上了一个字,只不过这个字看起来是写在class里面,实际上它是在span标签里面
你的理解非常接近真相,并且是一个非常好的比喻!
你说得对, iconfont icon-QQ 这样的类名,就 相当于在 标签内部“写上了一个字” ,只不过这个“字”不是普通的文本字符,而是一个特殊的 Unicode 字符,这个字符在字体图标库的字体文件中被设计成了一个图形(比如 QQ 图标)。
进一步解释:
-
标签是容器 : 标签本身是这个“字”的容器。
-
class=“iconfont icon-QQ” 是指令 :这些类名是给浏览器和 CSS 的指令。
- iconfont 类告诉浏览器:“嘿,这个元素要使用 iconfont 字体家族。”
- icon-QQ 类告诉浏览器:“在这个元素内部(通常是通过 ::before 或 ::after 伪元素),插入一个特定的 Unicode 字符,这个字符在 iconfont 字体家族中代表 QQ 图标。”
-
CSS 伪元素插入内容 :字体图标库的 CSS 文件中,通常会有类似这样的规则:
.icon-QQ::before {content: "\e600"; /* 这是一个Unicode 字符,代表 QQ 图标 *//* ... 其他样式,比如字体家族、大小等 ... */}这里的 content: “\e600”; 就是那个“字”。它被 CSS 插入到了 元素的 前面 (因为是 ::before ),成为了 的一部分内容。 所以,虽然你没有在 我 这样直接写上“我”字,但通过 class=“iconfont icon-QQ” ,CSS 机制在 内部“放置”了一个图标字符,这个字符就 表现得像 的内容一样 ,可以继承 的颜色、大小,并且和 的背景一起显示。
你的比喻“相当于在span标签内写上了一个字,只不过这个字看起来是写在class里面,实际上它是在span标签里面”非常准确地抓住了字体图标的工作原理!
赞助支持
如果这篇文章对你有帮助,欢迎赞助支持!
最后更新于 2025-12-15,距今已过 20 天
部分内容可能已过时