Javascript 在iOS safari上从横向切换到纵向后高度错误

Javascript 在iOS safari上从横向切换到纵向后高度错误,javascript,html,css,ios,safari,Javascript,Html,Css,Ios,Safari,在将iOS Safari切换到横向,然后再切换到纵向后,我花了数小时和数十次尝试来找出如何计算正确的高度 事实上,高度是从最小的ui模式激活(顶部的小条,底部没有条)开始的,这是在屏幕旋转后打开的 以下是破损的网站: 只需在iOS上切换到横向,然后切换到纵向,您就会看到底部导航栏所在的te空间保持为空,因为高度计算中没有考虑其大小 下面是我用来计算调整大小事件中css的正确--vhvar的代码(如所建议的): 最后是我在纵向模式下使用的代码: .main-container{ -w

在将iOS Safari切换到横向,然后再切换到纵向后,我花了数小时和数十次尝试来找出如何计算正确的高度

事实上,高度是从最小的ui模式激活(顶部的小条,底部没有条)开始的,这是在屏幕旋转后打开的

以下是破损的网站:

只需在iOS上切换到横向,然后切换到纵向,您就会看到底部导航栏所在的te空间保持为空,因为高度计算中没有考虑其大小

下面是我用来计算调整大小事件中css的正确
--vh
var的代码(如所建议的):

最后是我在纵向模式下使用的代码:

.main-container{
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg);
      -webkit-transform-origin:top left;
          -ms-transform-origin:top left;
              transform-origin:top left;               
      position:absolute;
      bottom:-100vw;
      height:100vw;
      width: 100vh;
      width:calc(var(--vh, 1vh) * 100);
};
如果能够根据iOS最小用户界面模式的开/关计算出正确的高度,或者阻止iOS完全进入最小用户界面模式,那就太好了

提前非常感谢

.main-container{
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg);
      -webkit-transform-origin:top left;
          -ms-transform-origin:top left;
              transform-origin:top left;               
      position:absolute;
      bottom:-100vw;
      height:100vw;
      width: 100vh;
      width:calc(var(--vh, 1vh) * 100);
};