2012-07-10 125 views
0

我正在制作一个svg图形艺术。当它在一个独立的文件中时,图像(使用图像标签)很好地显示,但是当我将代码复制到HTML页面时,图像消失(仅在chrome上)。内联svg不显示图像

我怀疑这是关于XML名称空间和东西的东西。 (xlink?)

帮助任何人吗?

+0

你可以发表你的例子吗? – 2012-07-10 14:45:41

回答

0

检查你的HTML页面是XHTML页面:它应该是一个有效的XML页面,并有正确的命名空间声明:

<!DOCTYPE html 
     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:svg="http://www.w3.org/2000/svg" 
     xmlns:xlink="http://www.w3.org/1999/xlink"> 

    <body><svg:svg version="1.1" (...) 
+0

非常感谢。但我明显使用HTML5 ... – Yossi 2012-07-10 13:07:41

+0

我试着用html5的简短文档类型,它不起作用。 – Yossi 2012-07-10 13:09:10

1

这可能是在SVG解析或Firefox 16的错误渲染引擎和其他版本。我们有SVG图纸,这些图纸使用PNG文件的图像标签,并在按照预期单独查看文档时显示PNG。但是,如果在HTML页面中我们使用img标签来显示那些非常相同的SVG图形,那么SVG中的其他所有内容都会显示出来,除了SVG的图像标签的PNG外。我应该在Mozilla Firefox上提交错误报告,但我还没有。