空的 HTML5 页面仍然会溢出并在移动设备上触发滚动条

问题描述 投票:0回答:2

我期待的是一个不会溢出的页面,因为没有内容,因此不需要滚动。但我得到的是一个空页面,但它仍然滚动,而不仅仅是触摸事件上出现的滚动条的装饰问题。它实际上偏移了视口中的背景。

我一直在尝试 Google 向我提供的所有方法,以确保主体块的宽度和高度等于视口的大小,并且不能大于视口的大小。我也尝试过over-flow:hidden无济于事。我也尝试过将主体尺寸设置为小于视口,但仍然没有成功。

 <!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title>mobile</title>
        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0" />
        <style type="text/css" media="screen and (max-device-width: 480px) and (-webkit-min-device-pixel-ratio: 1.5)">

            body, html{
                padding: 0px;
                margin: 0px;
                border: 0px;
                min-height: 100%;
                min-width: 100%;
                max-width: 100%;
                overflow:hidden;
            }

            body{
                background-image: url(lol.gif);
            }


        </style>
    </head>

    <body>
    </body>
</html>

我还编写了一些javascript来向我报告,同时在android上的chrome上查看这个视口宽度通过document.documentElement.clientWidth,并且低矮的,document.documentElement.clientWidth等于通过chrome的检查器指示的body元素的宽度。我什至更进一步并执行了这个:

document.getElementsByTagName('body')[0].style.width = (document.documentElement.clientWidth-100)+"px";
我仍然可以滚动。

这真的让我的吉米沙沙作响。

我尝试过的事情:

  • 最小高度:100%,最小宽度:100%
  • 溢出-x和溢出-y隐藏
html mobile scroll overflow
2个回答
0
投票

尝试从声明中删除“width=device-width”。 我遇到了与您描述的完全相同的问题,删除“width=device-width”为我解决了这个问题。


0
投票

对我有帮助

<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, minimum-scale=1.0" />
© www.soinside.com 2019 - 2024. All rights reserved.