Icomoon 图标 (svg) 未在 Internet Explorer (ie) 中加载
Icomoon icons (svg) not loading in Internet Explorer (ie)
我正在为我的 jQuery Mobile/Python PyramidHo 应用程序使用 Icomoon 的图标。我目前正在本地主机上进行测试,但部署时也存在问题。它们非常适合 Chrome 和 Firefox。它们不会出现在 Internet Explorer 11 中。据我所知,它们甚至不会被 Internet Explorer 加载。
我已经尽可能多地阅读了有关该问题的信息,但不幸的是。
我在我的标签顶部放置了以下元标签
<meta http-equiv="X-UA-Compatible" content="IE=edge">
我添加了 html5 shiv:
<!--[if lt IE 9]>
<script src="http://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js"> </script>
<![endif]-->
我的回复有这些设置:
response.cache_control.no_store = (bool) False
response.pragma = None
我是这样使用图标的:
<a href="demo_home" data-role="button" class="mp-menu-btn">
<span class="mp-circle mp-bg-drkblue mp-menu-btn-icon-bg"></span>
<svg class="icon icon-home2 mp-menu-btn-icon"><use xlink:href="/static/graphics/icons/symbol-defs.svg#icon-home2"></use></svg>
<span class="mp-btn-text mp-font-xlg">Demos</span>
</a>
如何加载 svg 文件并在 Internet Explorer 中显示图标?
编辑
在进行更多调试后,我可以清楚地看到对 SVG 图标文件的请求甚至没有到达我的后端金字塔服务器。 IE 正在阻止或忽略该请求。
我以前也遇到过这种情况。 IE 忽略对 SVG 的所有外部调用。简单的答案是将 <symbol>
defs 包含在 HTML
的正文中。由于这些 <symbol>
无论如何都是隐藏的,因此它们不会干扰任何其他 DOM 元素。然后你必须 xlink
到当前页面。
<use xlink:href="#icon-home2"></use>
如果您厌倦了用 <symbols>
的弹幕弄脏您美丽的页面(嘿,这是一种合理的厌恶),请使用 svg4everybody 并迫使 IE 屈服于您的意志。
我正在为我的 jQuery Mobile/Python PyramidHo 应用程序使用 Icomoon 的图标。我目前正在本地主机上进行测试,但部署时也存在问题。它们非常适合 Chrome 和 Firefox。它们不会出现在 Internet Explorer 11 中。据我所知,它们甚至不会被 Internet Explorer 加载。
我已经尽可能多地阅读了有关该问题的信息,但不幸的是。
我在我的标签顶部放置了以下元标签
<meta http-equiv="X-UA-Compatible" content="IE=edge">
我添加了 html5 shiv:
<!--[if lt IE 9]>
<script src="http://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js"> </script>
<![endif]-->
我的回复有这些设置:
response.cache_control.no_store = (bool) False
response.pragma = None
我是这样使用图标的:
<a href="demo_home" data-role="button" class="mp-menu-btn">
<span class="mp-circle mp-bg-drkblue mp-menu-btn-icon-bg"></span>
<svg class="icon icon-home2 mp-menu-btn-icon"><use xlink:href="/static/graphics/icons/symbol-defs.svg#icon-home2"></use></svg>
<span class="mp-btn-text mp-font-xlg">Demos</span>
</a>
如何加载 svg 文件并在 Internet Explorer 中显示图标?
编辑
在进行更多调试后,我可以清楚地看到对 SVG 图标文件的请求甚至没有到达我的后端金字塔服务器。 IE 正在阻止或忽略该请求。
我以前也遇到过这种情况。 IE 忽略对 SVG 的所有外部调用。简单的答案是将 <symbol>
defs 包含在 HTML
的正文中。由于这些 <symbol>
无论如何都是隐藏的,因此它们不会干扰任何其他 DOM 元素。然后你必须 xlink
到当前页面。
<use xlink:href="#icon-home2"></use>
如果您厌倦了用 <symbols>
的弹幕弄脏您美丽的页面(嘿,这是一种合理的厌恶),请使用 svg4everybody 并迫使 IE 屈服于您的意志。