我使用SVG精灵图片作为我的SVG图片,包含在一个文件中并使用该标记。
对于Ex,我的.svg文件包含
<symbol id="file">
<path>....
</symbol>
我在html上使用svg作为
<svg>
<use xlink:href="pathtosvg/main.svg#file"></use>
</svg>
是否有任何解决方法或我是否必须为所有svg创建单独的svg图像? TIA
答案 0 :(得分:1)
IE8根本不支持SVG。
IE9支持它,但缺少一些重要功能,包括外部元素。
您可以在此处查看有关支持功能的更多信息:http://caniuse.com/#search=svg
IE8和早期的 do 支持一种名为VML的替代矢量格式,它是IE专有的。在IE9中不赞成使用SVG,但有许多JavaScript库可用于将SVG转换为VML,以便在旧的IE版本中向后兼容SVG。即使在非常旧的IE版本中,这些库也可以允许一些SVG图像成功显示。
您可能想尝试其中一些库。您可以在此处找到它们(以及其他polyfill库)的列表:https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills#svg。
但是我怀疑你总是会挣扎,因为即使使用这些polyfill,许多SVG功能仍然不受支持。
最重要的是,如果你真的需要支持旧的IE版本,那么你需要重新考虑使用现代浏览器功能。 IE8特别是一个非常古老的浏览器,并且根本没有我们在现代浏览器中期望的那种功能集。删除功能或删除浏览器。