Html 如何在IE 9-10-11中使用外部SVG元素(<;使用>;标记)
我有以下资料:Html 如何在IE 9-10-11中使用外部SVG元素(<;使用>;标记),html,internet-explorer,svg,Html,Internet Explorer,Svg,我有以下资料: <svg viewBox="0 0 20 20" class="icon"> <use xlink:href="/img/svg/road.svg#Laag_1"></use> </svg> 我的doctype是正确的。当我将SVG添加到常规的标记中时,它会显示出来。我不能这样做的原因是我不能在上面做任何动画(例如:fill:#fff;),所以这是唯一的解决方案 图标在所有其他浏览器中正确显示。有什么想法吗?(通过
<svg viewBox="0 0 20 20" class="icon">
<use xlink:href="/img/svg/road.svg#Laag_1"></use>
</svg>
我的doctype是正确的。当我将SVG添加到常规的
标记中时,它会显示出来。我不能这样做的原因是我不能在上面做任何动画(例如:fill:#fff;),所以这是唯一的解决方案
图标在所有其他浏览器中正确显示。有什么想法吗?(通过罗伯特·朗森的评论找到答案)
这里的问题是use标记的外部使用。解决此问题的一种方法是使用Jonathan创建的SVG4Everyone库
Github:
CDN:
只需在页脚中实现,调用函数svg4Everyone();它完成了任务。请注意,您需要SVG文件的特定标记才能使其正常工作
SVG图像的标记略有更改:
<svg title="Tower" role="img" class="icon">
<use xlink:href="/img/svg/_svg-icons.svg#tower"/>
</svg>
“viewbox”现在在general\u svg-icons.svg文件中指定(以及为可读性指定的标题和角色)您使用的是哪个IE版本?。IE8中不支持。哦,这确实不是很清楚。它不需要在IE8中工作。IE10+(但在10或11中未显示)表示IE9、IE10和IE11不支持外部使用。@RobertLongson找到了解决方法。工作起来很有魅力。谢谢你,伙计!