扫码关注官方订阅号
正文
0
霞舞
发布时间:2025-09-13 12:44:06
471人浏览过
来源于php中文网
原创
在现代web开发中,可伸缩矢量图形(svg)因其高清晰度、可伸缩性和轻量级特性而广受欢迎。svg中的元素提供了一种创建可重用图形模板的机制,这对于管理和部署网站图标集尤为高效。本文将深入探讨如何在html中正确地引用和使用这些svg symbol,包括两种常见的方法及其最佳实践。
首先,我们需要明确和元素的作用:
为什么不能直接使用标签引用Symbol?
用户常常尝试使用标签并通过URL片段标识符(如test.svg#icon-checkmark)来引用SVG文件中的特定Symbol。然而,这种方法通常无法按预期工作。标签主要用于嵌入完整的SVG图像文件,或者通过#svgView(viewBox(...))引用SVG文件中的特定视图。它不会解析SVG文件内部的定义并将其作为独立图形渲染。对于Symbol的引用,元素是专门为此目的设计的标准机制。
这是最常见且兼容性最好的方法之一。它涉及将所有定义放置在一个隐藏的元素内,然后通过元素在HTML中引用它们。
立即学习“前端免费学习笔记(深入)”;
1. 定义SVG Symbol Sprite
首先,在HTML文档的
checkmark icon
2. 在HTML中引用Symbol
一旦Symbol被定义,就可以在页面的任何位置使用和元素来引用它。元素的href属性应指向Symbol的id。
确认
当图标数量较多,或者需要在多个页面甚至多个项目间共享图标时,将SVG Symbol定义放在一个独立的.svg文件中作为外部SVG Sprite是更优的选择。这种方法能够更好地分离内容和样式,并利用浏览器缓存。
生成草稿,转换文本,获得写作帮助-等等。
1. 创建外部SVG文件
创建一个名为icons.svg(或任何你喜欢的名称)的文件,并将所有定义放入其中。注意,这个文件应仅包含SVG根元素和Symbol定义,不包含任何display: none;样式。
icons.svg 内容示例:
checkmark icon star icon
2. 在HTML中引用外部Symbol
在HTML中,通过元素的href属性指向外部SVG文件的路径,并追加#和Symbol的id。
注意事项:
SVG Symbol的样式可以通过CSS进行控制。通常,我们会给包裹元素的标签添加一个类,然后通过这个类来定义样式。
.icon { /* 移除默认的描边 */ stroke: unset; /* 或者 stroke: none; */ stroke-width: 0px; /* 让图标颜色继承父元素的文本颜色 */ fill: currentColor; /* 将SVG图标作为行内块元素显示 */ display: inline-block; /* 设置图标的尺寸,em单位使其与字体大小相关联 */ width: 1em; height: 1em; /* 调整垂直对齐,使其与文本基线对齐 */ vertical-align: -0.15em; }
样式解释:
相关文章
html5可视化编辑怎么改文字排版_html5可视化排版调整技巧【技巧】
html个人页面怎么加时间轴_html时间线布局与样式【排版】
html5怎么给图片加边框_html5图片边框添加技巧【步骤】
html5如何实现图片翻转_html5水平垂直翻转教程【技巧】
html个人页面怎么加渐变_html背景渐变css写法【样式】
HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!
相关标签:
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
如何在 Go 中从 Redis 列表类型键安全获取所有元素
2026-01-29 15:45
Remix Logic 现已推出DLSS 加速 Half Sword、Highguard、《噬血代码 II》(CODE VEIN II) ARC Raiders:Headwinds 更新
Minecraft源码中IN_FIRE与ON_FIRE伤害源的区别解析
2026-01-29 16:04
iPhone 18 Pro能直连星链:苹果史上首次
2026-01-29 16:16
如何在 ES6 中遍历对象内部的多个数组
2026-01-29 16:26
如何在多个 C 模块中复用 Go 导出的回调函数
2026-01-29 16:49
皓衣行原著小说叫什么
Tone.js 序列进度与状态监控完整指南
2026-01-29 17:15
目标地图怎么开会员-目标地图会员开通方法
2026-01-29 17:38
任天堂邀请多位记者赴纽约 大型直面会或将揭晓
2026-01-29 17:40
热门AI工具
幻方量化公司旗下的开源大模型平台
字节跳动自主研发的一系列大型语言模型
阿里巴巴推出的全能AI助手
腾讯混元平台推出的AI助手
文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。
基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿
一站式AI创作平台,免费AI图片和视频生成。
最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。
智谱清言 - 免费全能的AI助手
相关专题
mysql标识符无效错误的解决办法:1、检查标识符是否被其他表或数据库使用;2、检查标识符是否包含特殊字符;3、使用引号包裹标识符;4、使用反引号包裹标识符;5、检查MySQL的配置文件等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。
183
2023.12.04
Python标识符有变量标识符、函数标识符、类标识符、模块标识符、下划线开头的标识符、双下划线开头、双下划线结尾的标识符、整型标识符、浮点型标识符等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。
287
2024.02.23
本专题整合了java标识符相关内容,想了解更多详细内容,请阅读下面的文章。
258
2025.06.11
本专题整合了c++标识符相关内容,阅读专题下面的文章了解更多详细内容。
124
2025.08.07
本专题整合了java入门学习指南、初学者项目实战、入门到精通等等内容,阅读专题下面的文章了解更多详细学习方法。
2
2026.01.29
本专题整合了java配置环境变量设置、步骤、安装jdk、避免冲突等等相关内容,阅读专题下面的文章了解更多详细操作。
本专题整合了java成品网站、在线成品网站源码、源码入口等等相关内容,阅读专题下面的文章了解更多详细推荐内容。
本专题整合了Java字符串截取、处理、使用、实战等等教程内容,阅读专题下面的文章了解详细操作教程。
本专题整合了Java空对象相关教程,阅读专题下面的文章了解更多详细内容。
3
热门下载
相关下载
精品课程
共14课时 | 0.8万人学习
共46课时 | 3.1万人学习
共754课时 | 25万人学习
共6课时 | 11.2万人学习
共79课时 | 151.7万人学习
共6课时 | 53.4万人学习
共4课时 | 22.4万人学习
共13课时 | 0.9万人学习
最新文章
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部