2012-11-02 234 views
0

我遇到了一些SVG渲染错误,除了Chrome以外的所有浏览器。 SVG都嵌入在HTML文件中,所有当前的浏览器都支持该文件。但是,大多数浏览器的颜色都不对(这只是标准的十六进制颜色),而其他浏览器根本无法渲染一些(而其他的则很好)。以下是源文件和屏幕截图:http://awesomegeek.com/bugreport/bugreport.zip请亲自看看,并告诉我您是否可以复制它或提出解决方案。SVG渲染问题

回答

1

恐怕你的html文件无效。您有多个具有相同ID的元素,例如linearGradient id =“a”。我知道它们出现在不同的svg片段中,但是你仍然无法做到这一点,所有的Ids在文件中必须是全局唯一的。我认为Firefox通过挑选文件中的第一个作为一个整体来正确地绘制图标。

+0

谢谢,它解决了Firefox和IE9中的颜色问题。但是,Safari和Android浏览器仍只部分呈现SVG。任何想法为什么发生这种情况?这是更新的代码:http://pastebin.com/9J6bKsvv – MrDrMcCoy

+0

Chrome和Safari使用相同的渲染引擎(Webkit),所以它可能会在一些新的Safari中运行。 Safari的更新频率低于Chrome,我相信最新的Safari需要一个相当新的Mac OS。我猜测和Android一样。 –

+0

嗯,这很糟糕,但它回答了我的问题。我想我现在必须坚持使用JPEG。不管怎么说,还是要谢谢你。 – MrDrMcCoy