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

use*_*944 5 html mobile scroll overflow

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

我一直在尝试谷歌向我提供的一切,以确保主体块的宽度和高度等于视口的大小,而不是更大。我也尝试过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>
Run Code Online (Sandbox Code Playgroud)

我还编写了一些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隐藏

小智 0

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