微软Edge浏览器中的SVG渲染

6

我正在使用<use>节点在html页面中复制图像,但这些图像在Microsoft Edge浏览器中无法呈现。是否有解决方法? 谢谢。


你能分享一小段代码吗?我刚刚尝试在这个 JSBin 示例中重现问题,但是我可以重复图像元素。http://jsbin.com/cazasi/edit?html,output - Ryan Joy
我使用类似以下的东西 - melvindidit
我使用类似以下的代码: 而SVG文件中有多个图像,通过以下方式进行区分: - melvindidit
1个回答

3

您需要使用类似svg4everybody的东西才能使其正常工作。旧版本的脚本没有正确的UA字符串,但是最新版本现在应该可以正确地针对Edge。

升级到Windows 10并更新脚本后,我自己也注意到了这一点。更新之前,IE 9-11可以正常工作,但Edge不行,因为UA没有包含在检查中。npm版本也刚刚更新,因此您也可以从那里获取它。


1
如果我没理解错的话,svg4everybody会使用png图像作为备选方案,是吗?那么我将失去所有的SVG样式可能性吗? - KwiZ
你可以使用回退方法来支持IE9以下的浏览器,使用你自己生成的png文件。虽然你不能对它们进行样式设置,但这仍然比不显示任何内容要好得多。 - mdmoreau
我建议使用svgxuse而不是svg4everybody:https://github.com/Keyamoon/svgxuse - Keyamoon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接