我有一个使用代码动态创建的大型SVG。 它所做路径的一个例子是:
<path id="curveAB" d="M 8307,437 S 8307,447 8451,406 8595,365 8595,375 " stroke="blue" stroke-width="3" fill="none"></path>
以前这是有效的,但我最近注意到(没有代码更改)它停止在浏览器中显示。
他们在Chrome 29和36之间停止工作,但不确定何时。
它是用于在框之间绘制箭头的系统的一部分。
你可以在这里演示完整的东西; http://darkflame.co.uk/GreenFruitEngine2/GreenFruitEnginev3.html#fruit
您需要勾选&#34; examples / exampleIndex.ntlist&#34;,点击&#34;加载索引&#34;。 然后当它的加载类型,例如&#34; Fruit&#34;并按Enter键。 你应该看到很多方框 - 如果它正在工作,它们之间会有一些线显示属性的语义继承。
如果使用chrome检查器,则可以看到保留每个SVG路径应占用的空间的框。它好像路径是可见的,但正在计算中。
我注意到它也不再适用于Firefox。 SVG标准在去年以某种方式发生了变化吗? SVG现在有尺寸限制吗?
这影响了我的一些项目,并且很难谷歌任何看似相关的东西。 我看到的另一个可能性是我一直在错误地格式化SVG,并且它通过共同发生,曾经在Chrome 29上工作正常(并且仍然存在),但从那以后Chrome已经收紧了它的SVG传球手,我的错误不再滑倒在?
非常感谢任何帮助。
答案 0 :(得分:1)
您的<svg>
没有宽度或高度属性。也没有通过CSS给出宽度或高度。在这种情况下,它默认为300x150。因此,对于您的页面,它隐藏在左上角。如果指定宽度和高度,则应正确显示。
<svg width="100%" height="100%">
Chrome最近改变了(即固定)其行为。这就是为什么它会停止为你工作。