SVG仅在Firefox中部分显示

SVG仅在Firefox中部分显示,firefox,svg,rendering,Firefox,Svg,Rendering,我目前正在使用SVG格式的瑞士地图。标记直接嵌入中 在Chromium(Linux)中,一切看起来都很好,但在Firefox(Linux)中,只显示SVG的一部分。SVG标记本身似乎是有效的 铬: 火狐: 为了便于测试,我使用源代码创建了一个JSFIDLE: 这是Firefox的问题,还是SVG的问题?在任何情况下,我如何才能使其正常工作?您应该将高度和宽度设置为您的父级div,然后将svg高度和宽度都设置为100%: HTML: SVG: 检查以下代码:我想您需要为Firefox指

我目前正在使用SVG格式的瑞士地图。
标记直接嵌入

在Chromium(Linux)中,一切看起来都很好,但在Firefox(Linux)中,只显示SVG的一部分。SVG标记本身似乎是有效的

铬:

火狐:

为了便于测试,我使用源代码创建了一个JSFIDLE:


这是Firefox的问题,还是SVG的问题?在任何情况下,我如何才能使其正常工作?

您应该将
高度
宽度
设置为您的父级
div
,然后将
svg
高度和宽度都设置为
100%

HTML:


SVG:



检查以下代码:

我想您需要为Firefox指定图像尺寸。很好,谢谢!:)我以前尝试过设置容器div的高度/宽度,但是缺少svg元素的100%设置,这就是为什么它一开始对我不起作用的原因。@DaniloBargen是的,这是因为您应该将
svg
width
height
设置为
100%
,以便将父元素大小设置为子元素。或者,您可以为svg提供有用的固有大小,以便浏览器不会将其默认为CSS定义的替换元素默认大小。
<div id="map" style="height: 500px;width:600px;">
<svg
   xmlns:svg="http://www.w3.org/2000/svg"
   xmlns="http://www.w3.org/2000/svg"
   version="1.0"
   id="svg_main" style="height: 100%;width: 100%">