HTML 中使用 SVG

SVG 文件可通过以下标签嵌入 HTML 文档:<embed>、<object> 或者 <iframe>。

下面,分别演示三种把 SVG 文件嵌入 HTML 页面的不同方法。


使用 <embed> 标签

<embed> 标签被所有主流的浏览器支持,并允许使用脚本。注释:当在 HTML 页面中嵌入 SVG 时使用 <embed> 标签是 Adobe SVG Viewer 推荐的方法!然而,如果需要创建合法的 XHTML,就不能使用 <embed>。任何 HTML 规范中都没有 <embed> 标签。

语法:
  1. <embed src="rect.svg" width="300" height="100"
  2. type="image/svg+xml"
  3. pluginspage="http://www.adobe.com/svg/viewer/install/" />

注释:pluginspage 属性指向下载插件的 URL。


使用 <object> 标签

<object> 标签是 HTML 4 的标准标签,被所有较新的浏览器支持。它的缺点是不允许使用脚本。

提示:假如您安装了最新版本的 Adobe SVG Viewer,那么当使用 <object> 标签时 SVG 文件无法工作(至少不能在 IE 中工作)!

语法:
  1. <object data="rect.svg" width="300" height="100"
  2. type="image/svg+xml"
  3. codebase="http://www.adobe.com/svg/viewer/install/" />

注释:codebase 属性指向下载插件的 URL。


使用 <iframe> 标签

<iframe> 标签可工作在大部分的浏览器中。

语法:
  1. <iframe src="rect.svg" width="300" height="100">
  2. </iframe>

使用 SVG 的最佳方法

如果仅仅通过引用 SVG 的命名空间,就能够把 SVG 元素之间添加到 HTML 代码中,那就太棒了,这像这样:

  1. <html xmlns:svg="http://www.w3.org/2000/svg">
  2. <body>
  3. <p>This is an HTML paragraph</p>
  4. <svg:svg width="300" height="100" version="1.1" >
  5. <svg:circle cx="100" cy="50" r="40" stroke="black"
  6. stroke-width="2" fill="red" />
  7. </svg:svg>
  8. </body>
  9. </html>