
html5 中使用 svg(可缩放矢量图形)非常直接且功能强大。SVG 是基于 xml 的矢量图像格式,能够在不失真的情况下任意缩放,非常适合响应式网页设计。它可以直接嵌入 HTML 文档中,无需额外插件,现代浏览器都支持良好。
1. 在 html5 中嵌入 SVG 的方法
有多种方式可以在 HTML 页面中使用 SVG,最常见的是内联 SVG 和引用外部文件。
- 内联 SVG:将 SVG 代码直接写在 HTML 中,便于控制样式和交互。
- 使用 <img> 标签引用 SVG 文件:适合静态图像,但无法用 css 或 JavaScript 控制内部元素。
- 通过 <Object>、<iframe> 或 <embed> 嵌入 SVG:保留交互性,适合独立 SVG 文件。
推荐在需要动态操作或动画时使用内联方式。
2. 创建基本 SVG 图形
SVG 提供了一系列基本图形标签,可在 HTML 中直接使用。
立即学习“前端免费学习笔记(深入)”;
常见图形元素包括:
- <rect>:绘制矩形
- <circle>:绘制圆形
- <ellipse>:绘制椭圆
- <line>:绘制直线
- <polygon>:绘制多边形
- <polyline>:绘制折线
- <path>:绘制复杂路径
示例:绘制一个红色圆形
<svg width=”200″ height=”200″>
<circle cx=”100″ cy=”100″ r=”50″ fill=”red” />
</svg>
3. 使用 CSS 和 JavaScript 操作 SVG
内联 SVG 可以像普通 dom 元素一样被 CSS 和 JavaScript 控制。
- CSS 可用于设置 fill、stroke、opacity 等视觉属性。
- JavaScript 可绑定事件,实现动画或交互效果。
例如,让圆形点击后变色:
<svg width=”200″ height=”200″>
<circle id=”myCircle” cx=”100″ cy=”100″ r=”50″ fill=”blue” />
</svg>
<script>
document.getElementById(“myCircle”).addEventListener(“click”, function() {
this.setAttribute(“fill”, “green”);
});
</script>
4. SVG 的优势与适用场景
SVG 特别适合以下情况:
相比位图(如 PNG、JPG),SVG 文件更小、清晰度更高,尤其在高分辨率屏幕上表现优异。
基本上就这些。掌握 SVG 的基本语法和嵌入方式,就能在 HTML5 项目中灵活使用矢量图形,提升视觉质量和交互体验。不复杂但容易忽略细节,比如坐标系统和 viewBox 的设置,建议多实践常用图形和动画效果。


