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