1

我在浏览器之间似乎是基本文件的 SVG 渲染不一致时遇到问题。我需要找到一种方法来制作这个 SVG 跨浏览器,但似乎无法查明问题所在。如果渐变的停止颜色语句从 CSS 移动到 style = style="stop-color:#XXXXXX",Firefox 23 和 Inkscape 问题就会消失。遗憾的是,由于该文件的使用方式,这不是一个选项。该文件在 W3C 验证器上验证,似乎只使用了简单的功能,但呈现不一致。怎么了?

我还不允许发布图片,所以这里是一个显示问题的图片的链接:

http://www.flickr.com/photos/95652985@N07/9754841655/lightbox/

SVG 源代码在这里:

https://dl.dropboxusercontent.com/u/11366066/fire.svg

感谢您对这个令人困惑的问题的帮助!

4

1 回答 1

0

我认为您的坐标 x1、y1 等(例如 <linearGradient id="id1" gradientUnits="userSpaceOnUse" xlink:href="#id0" x1="32093.5" y1="4749.35" x2="37189.8" y2="4749.35">

可能超出用户空间边界框,因此被包裹在 Chrome 中,并在 Firefox 等中剪辑(我的 Ubuntu SVG 查看器也得到与 Firefox 相同的结果)。

一点哲学:SVG 和 HTML 一样,需要在渲染中具有容错性,然后在扩展“更简单”规范的情况下通常具有不同的行为(实际上 SVG远非简单)

编辑:我的 SVG 查看器报告为尺寸:4252 x 2835 pixels 74,2 kB 34 %. 即使我们乘以 4252 * 3,我们也远低于 x1,x2 值....

于 2013-09-15T06:42:47.840 回答