2016-09-29 84 views
-2

我在SVG上遇到了问题。它不会在html中显示。不与<img>不与<object> 如果直接浏览到此SVG,我可以看到它。测试:http://angliru.nl/upload/121.svg 但包括我只看到白色,请参阅:http://angliru.nl/test.htmlSVG不会显示在html中

我在做什么错了?

我检查了这3种可能性,但仍然心不是工作:

  • 您的服务器使用了错误的MIME类型SVG图像。 (可 固定的加入将AddType图像/ SVG + XML的SVG到.htaccess文件;这里讨论 其他方法)
  • 你到别的地方 保存SVG文件,并没有在图标/ chrome.svg存在。 (尝试在图标/ chrome.svg直接导航到 SVG文件,这是否在您的 浏览器中显示?)
  • 您有足够的权限保存的文件, 导致您的Web服务器是无法访问文件。 (可 通过导航到图标目录和 chrome.svg在命令行提示输入chmod 0644是固定的。)
+0

*寻求调试帮助的问题(“为什么这个代码不工作?”)必须包含所需的行为,特定的问题或错误以及在问题本身中重现问题所需的最短代码。没有明确问题陈述的问题对其他读者无益。请参阅:如何创建[mcve]。* – BSMP

+0

我没有错误消息。它只是显示一个白页,而不是包含的svg –

+1

你的问题仍然缺少在问题本身中重现它所需的最短代码。 – BSMP

回答

0

集成作为SVG,图像不工作没有问题(运行代码片段) :

<svg version="1.1" id="Laag_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 
 
\t width="100%" height="100%" 
 
viewBox="265 90 311.9 495.3" enable-background="new 0 0 841.9 595.3" xml:space="preserve"> 
 
<g> 
 
    <defs> 
 
     <pattern id="img1" patternUnits="userSpaceOnUse" width="842" height="595"> 
 
      <image xlink:href="http://www.angliru.nl/upload/niels.jpg" x="0" y="0" 
 
       width="842" height="595" /> 
 
     </pattern> 
 
    </defs> 
 
\t <path d="M549.9,476.2c-3.3,0-6.1,0-8.9,0c-15.2,0-30.3-0.1-45.5,0.1c-2.3,0-5,1.3-6.8,2.9c-3.6,3-6.7,6.5-10,9.8 
 
\t \t c-3.2,3.1-6.4,3.3-9.5,0c-0.1-0.1-0.3-0.2-0.3-0.4c-7.5-11.2-18.1-13.6-31-12.6c-13.6,1-27.3,0.1-41,0.3c-2,0-4.4,1.1-6,2.5 
 
\t \t c-3.5,3-6.6,6.6-10,9.8c-3.9,3.7-7.1,4.1-10.1-0.1c-7.9-10.9-18.3-13.5-31.1-12.5c-12.8,1-25.6,0.2-38.5,0.1 
 
\t \t c-0.3,0-0.6-0.2-1.5-0.6c0-11.7,0-23.6,0-35.6c0-7.7,0.3-15.3-0.1-23c-0.1-2.3-1.4-5-3-6.8c-3.7-4.3-8-8-11.9-12.1 
 
\t \t c-3.7-3.9-3.6-6.3,0.1-10.2c0.2-0.2,0.4-0.5,0.7-0.7c12.3-8.5,16.2-20,14.5-34.8c-1.3-11,0-22.3-0.3-33.4c-0.1-2.4-1.3-5.1-2.9-7 
 
\t \t c-3.9-4.9-8.4-9.4-12.6-14.2c-2.5-2.9-2.3-5.6,0.5-8.3c4.1-3.9,8.3-7.7,12-12c1.6-1.8,2.8-4.6,2.8-7c0.2-16.7,0.2-33.3,0-50 
 
\t \t c0-2.2-1.2-4.8-2.6-6.5c-3.7-4.5-7.9-8.6-11.9-12.8c-3.5-3.8-3.4-6,0.2-9.8c2.4-2.5,4.5-5.5,7.2-7.6c6.8-4.9,7.6-11.5,7.4-19.3 
 
\t \t c-0.4-15.8-0.1-31.6-0.1-47.7c7.3,0,14.4,0,21.5,0c10.8,0,21.6,0.2,32.5,0.1c1.1,0,2.5-0.7,3.3-1.6c4.4-4.5,8.6-9.3,13-13.8 
 
\t \t c4.2-4.3,6.9-4.2,11-0.1c5.1,4.9,9.5,11.8,15.7,14.3c6.2,2.5,14.1,0.6,21.3,0.7c10.5,0,21,0.3,31.5,0c2.5-0.1,5.4-1.4,7.3-3 
 
\t \t c4-3.5,7.5-7.6,11.2-11.4c4.6-4.6,7.2-4.7,11.8-0.2c2.3,2.2,4.9,4.2,6.7,6.7c5,7.1,11.9,8.4,19.9,8.3c12.7-0.3,25.3,0,38,0 
 
\t \t c1.5,0,2.9,0,5.2,0c0,10.7,0,21,0,31.3c0,8.7-0.3,17.3-0.1,26c0,1.8,1.2,3.9,2.5,5.3c4,4.2,8.3,8.1,12.5,12.3c3.2,3.2,3,6.4,0,9.7 
 
\t \t c-1.5,1.6-2.8,3.3-4.6,4.6c-8.7,6.2-11.1,14.5-10.5,25c0.8,13.5,0.2,27,0.5,40.5c0,1.9,1,4.2,2.3,5.6c3.8,4.2,7.9,8.1,11.9,12.1 
 
\t \t c4,4,3.9,7,0,11.1c-2,2-3.7,4.4-6,6c-7.4,5.1-8.8,12.2-8.5,20.7c0.6,14.3-0.1,28.7,0.1,43c0,2.2,1.3,4.7,2.8,6.4 
 
\t \t c3.8,4.4,8.1,8.3,12.1,12.6c2.7,2.9,2.6,6-0.2,8.9c-3.7,3.8-7.4,7.6-11.3,11.3c-2.5,2.3-3.4,4.9-3.3,8.3 
 
\t \t C550,436.7,549.9,456.1,549.9,476.2z" 
 
\t \t fill="url(#img1)" /> 
 
</g> 
 
</svg>

而且,你说你已经检查你的服务器发送正确的MIME类型,但你显然没有。没有发送Content-Type标头。

+0

谢谢,但我不明白为什么它不适用于对象或img? –

+0

再说一遍:因为你的服务器没有发送正确的Content-Type头,所以SVG可能被解释为普通的HTML,而不是SVG,而不是SVG。 – Connum