无法在 Firefox 中显示我的 svg 图像?
Can't get my svg image displayed in Firefox?
我无法在 Firefox 中显示我的 svn-image...它在 Safari 和 Chrome(没有 IE,所以还没有测试)中工作正常。
在我的html;
中是这样实现的
img class="logo1" src="/images/logo6.svg"
其中logo1只是一个class定位。
我已经尝试 google 但刚刚发现 Firefox 不支持下垂,但仍然有办法显示它。但是,所有解决方案都非常难以理解。 (我不是程序员!)
有什么简单的方法可以做到这一点吗?
Firefox 支持 svg。您可以使用此 HTML 代码,它将在 Firefox 中运行。
<svg width="100" height="100">
<circle cx="50" cy="50" r="40" stroke="green" stroke-width="4" fill="yellow" />
Sorry, your browser does not support inline SVG.
</svg>
如果您提供完整的代码和文件,我会为您更正。
您没有在任何地方指定 SVG 的大小。在您的 logo1
class 中,您指定了 100%,但 100% 折扣是什么? Chrome 正在工作,因为它默认为 "indeterminate sizing" 默认值,即 300px 宽度。但是 Firefox 使用了父元素 (<li>
) 宽度的 100%,即 0
在 logo1
class 中指定实际宽度 and/or 高度,一切都应该在 FF 中正常工作。
.logo1 {
padding-top: 6px;
width: 300px;
}
您可以通过尝试直接在浏览器上加载 svg 来检查它是否是几何问题。如果这不是 gemoetry 问题并且 svg 本身不显示,那么您肯定想检查 svg 代码内部是否有罪魁祸首。使用 Inkscape,您可以在编辑 -> XML 编辑器下访问 XML 结构,但您可以使用您选择的文本编辑器打开 svg(未压缩)——对于复杂的 svg 文件,这可能成为一个更灵活的工具。在我的 svg 案例中,我是 "borrowing" 来自 Paper 主题的打印机符号设备,结果是我在 copy/paste 所在的图层中有一个带有“display: inline-block
”,它出现在我自己的文件中。这一层 Chrome 会呈现得很好,但 Firefox 不会显示它。我删除了 style 属性和 violá!有图标。
我 运行 遇到了 Firefox (v58.0.2) 的渲染问题,其中 display: flex
作为 SVG 的父级导致了问题,例如:
<div style="width: 50px; display: flex">
<span class="Icon">
<svg>
<use xlink:href="#myicon" href="#myicon"></use>
</svg>
</span>
</div>
删除父 div 中的 display: flex
样式有助于解决问题。
我无法在 Firefox 中显示我的 svn-image...它在 Safari 和 Chrome(没有 IE,所以还没有测试)中工作正常。
在我的html;
中是这样实现的img class="logo1" src="/images/logo6.svg"
其中logo1只是一个class定位。
我已经尝试 google 但刚刚发现 Firefox 不支持下垂,但仍然有办法显示它。但是,所有解决方案都非常难以理解。 (我不是程序员!)
有什么简单的方法可以做到这一点吗?
Firefox 支持 svg。您可以使用此 HTML 代码,它将在 Firefox 中运行。
<svg width="100" height="100">
<circle cx="50" cy="50" r="40" stroke="green" stroke-width="4" fill="yellow" />
Sorry, your browser does not support inline SVG.
</svg>
如果您提供完整的代码和文件,我会为您更正。
您没有在任何地方指定 SVG 的大小。在您的 logo1
class 中,您指定了 100%,但 100% 折扣是什么? Chrome 正在工作,因为它默认为 "indeterminate sizing" 默认值,即 300px 宽度。但是 Firefox 使用了父元素 (<li>
) 宽度的 100%,即 0
在 logo1
class 中指定实际宽度 and/or 高度,一切都应该在 FF 中正常工作。
.logo1 {
padding-top: 6px;
width: 300px;
}
您可以通过尝试直接在浏览器上加载 svg 来检查它是否是几何问题。如果这不是 gemoetry 问题并且 svg 本身不显示,那么您肯定想检查 svg 代码内部是否有罪魁祸首。使用 Inkscape,您可以在编辑 -> XML 编辑器下访问 XML 结构,但您可以使用您选择的文本编辑器打开 svg(未压缩)——对于复杂的 svg 文件,这可能成为一个更灵活的工具。在我的 svg 案例中,我是 "borrowing" 来自 Paper 主题的打印机符号设备,结果是我在 copy/paste 所在的图层中有一个带有“display: inline-block
”,它出现在我自己的文件中。这一层 Chrome 会呈现得很好,但 Firefox 不会显示它。我删除了 style 属性和 violá!有图标。
我 运行 遇到了 Firefox (v58.0.2) 的渲染问题,其中 display: flex
作为 SVG 的父级导致了问题,例如:
<div style="width: 50px; display: flex">
<span class="Icon">
<svg>
<use xlink:href="#myicon" href="#myicon"></use>
</svg>
</span>
</div>
删除父 div 中的 display: flex
样式有助于解决问题。