Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何在IE 9-10-11中使用外部SVG元素(<;使用>;标记)_Html_Internet Explorer_Svg - Fatal编程技术网

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找到了解决方法。工作起来很有魅力。谢谢你,伙计!