HTML 中包含的带有 "img" 标记的 SVG 是否可以链接到带有 "image" 标记的外部图像?



我在服务器上的同一位置有以下文件,图像.svg以及文件位图.png:

<?xml version="1.0" ?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
  "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100px" height="100px" version="1.1"
     xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink">
  <image x="0" y="0" width="100px" height="100px"
         xlink:href="bitmap.png" />
</svg>

当我直接转到图像文件时,它包括位图.png图像。

当我将图像包含在带有 <object data="image.svg"></object> 标记的网页中时,将加载位图.png文件。

当我将图像包含在带有 <img src="image.svg" /> 标记的网页中时,位图.png不会加载。

什么给?

svg 本身是有效的。

当通过 引用 svg 时,某些浏览器不允许外部引用。要使其正常工作,您可以做的是将 png 转换为数据 URI 并将其放在那里,例如请参阅此答案了解如何执行此操作。

最新更新