在 HTML5 中使用 SVG 时:SVG 是否<?xml version="1.0" encoding="UTF-8"?>
需要XML 声明
- 通过图像
<img>
或 - 作为 CSS
background-image
的?
这与“<a href="https://stackoverflow.com/questions/18467982/are-svg-parameters-such-as-xmlns-and-version-needed">是SVG参数如'xmlns'和需要'版本'”。两个答案和MDN 命名空间速成课程根据需要澄清了命名空间问题。
但是 SVG 1.1 不包括关于 XML 声明的必要性或何时可以省略的声明?
没有声明的例子:
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200" viewBox="0 0 200 200">
<circle id="circle--red" cx="30" cy="30" r="30" fill="#f00"/>
</svg>
2016-07-04 更新:澄清了关于XML 声明的问题。谢谢@Martin Honnen! 2017-10-24 更新:更改为“UTF-8”大写和 SVGO 优化的属性顺序。