css Tailwind H-screen在移动的设备上无法正常工作

mqkwyuun  于 2023-05-02  发布在  其他
关注(0)|答案(4)|浏览(223)

h-screen类应该将高度设置为屏幕的高度,但在iOS上不起作用。有办法解决吗?

oewdyzsn

oewdyzsn1#

我经常发现在内容外部用.inset-0类设置一个绝对 Package 器很有用。

<!-- this will use the whole viewport even in mobile -->
<div class="absolute inset-0">
    <div>
      lorem ipsum
    </div>
</div>
uyto3xhc

uyto3xhc2#

在应用加载时运行此JavaScript代码
document.documentElement.style.setProperty("--vh", window.innerHeight * 0.01 + 'px');
并将其放在全局样式中以覆盖h-screen类

.h-screen {
    height: 100vh; /* Fallback for browsers that do not support Custom Properties */
    height: calc(var(--vh, 1vh) * 100);
}
niknxzdl

niknxzdl3#

问题是h-screen使用100vh作为高度。正如在this question中提到的,100vh的目标是不在移动的设备上工作。
但有一种方法可以欺骗它,但它不会被添加到顺风,因为它需要JS。要了解更多关于这个'把戏'检查这篇文章:The trick to viewport units on mobile

o8x7eapl

o8x7eapl4#

面对同样的问题,发现我们可以使用dvh(动态视口高度)。
h-[calc(100dvh)]而不是h-screen
但是,最好添加一个备用选项,以防万一。

相关问题