Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.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
Javascript SVG在调整窗口大小时调整高度,也调整到父窗口的中心_Javascript_Jquery_Svg - Fatal编程技术网

Javascript SVG在调整窗口大小时调整高度,也调整到父窗口的中心

Javascript SVG在调整窗口大小时调整高度,也调整到父窗口的中心,javascript,jquery,svg,Javascript,Jquery,Svg,因此,我在使我的web应用响应时遇到了麻烦。我已经设法使SVG在调整宽度时能够适应,但是我在高度方面遇到了麻烦 我提出的调整高度大小的最佳解决方案是以下js/jQuery代码: function updateWindow(){ var y = (($(window).height())); svgMap.style.height=y; } updateWindow(); window.

因此,我在使我的web应用响应时遇到了麻烦。我已经设法使SVG在调整宽度时能够适应,但是我在高度方面遇到了麻烦

我提出的调整高度大小的最佳解决方案是以下js/jQuery代码:

        function updateWindow(){
            var y = (($(window).height()));
            svgMap.style.height=y;
        }
        updateWindow();
        window.onresize = updateWindow;
这样做的目的是将SVG视口高度设置为与窗口高度相等。。从某种意义上说,它可以使SVG与浏览器窗口的高度居中。不太好,它在移动设备上搞砸了,几乎增加了一个奇怪的最高利润。它还使SVG稍微变小,除非我将“y”乘以大于1的某个值。然而,这样做会增加利润差距。真麻烦

您可以在此处查看演示:

不带高度中心的演示在此处更改:

总之,如何在
标记中水平和垂直地将SVG居中。另外,我希望SVG映射本身能够填充包装器容器

谢谢你的帮助


编辑:所以我放弃了让它刚好适合父母的身高。。相反,我只是写了一些JS,如果高度太小,会导致页面溢出,它会提示用户一个警告。我还制作了它,通过在每个页面中添加内联CSS以及媒体查询,它的样式将非常完美

如果将SVG的宽度和高度设置为100%,即:

<svg width="100%" height=="100%">...
。。。

然后,只需调整SVG所在容器的大小即可。“xMidYMid meet”的PreserveSpectratio设置应垂直居中。

仍然没有垂直缩放。。我甚至尝试在源代码中的
中添加
width=“100%”height=“100%”
,没有雪茄。您想要垂直缩放吗?你是说你想让它水平和垂直伸展?如果是这种情况,请使用
preserveSpectratio=“none”
。如果您希望它能够缩放以填充整个容器(意味着一些svg溢出并被剪裁),请使用
preserveAspectRatio=“xmidymidSlice”
。我希望它能够适合窗口并完全被用户看到。正如你所说的,我不希望出现溢出/剪切。我尝试了
保留aspectratio=“none”
,但没有成功。