为什么document.documentElement.clientWidth在手机上是980px ?



我试图了解documentElement.clientWidthwindow.innerWidth及其在各种设备上的行为。我使用这个http://67.20.67.232/test.html页面进行测试,一件让我困惑的事情是,在我的Nexus 6上documentElement.clientWidth是980,我用开发工具的移动模拟尝试了一下,结果是一样的。那么为什么是980年呢?并且,在移动设备上,window.innerWidth可以被认为是视口宽度吗?该页面的HTML如下:

<html>
    <head>
     <script src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
    <script type="text/javascript">
        (function loop(){
            requestAnimationFrame(function(){
                $('#doc').html( document.documentElement.clientWidth );
                $('#win').html( window.innerWidth );
                $('#d1').html($('#w div:eq(0)').width());
                $('#d2').html($('#w div:eq(2)').width());
                loop();
            })
        })();
    </script>
    </head>
    <body>
        <div id="w" style="margin-top:50px;margin-left:50px;font-size:50px">
            <div style="float:left">client:<span id="doc"></span></div>
            <div style="clear:both"></div>
            <div style="float:left">window:<span id="win"></span></div>
            <div style="clear:both"></div>
            <div id="d1"></div>
            <div id="d2"></div>
        </div>
    </body>
</html>

在标题部分包含viewport meta标签:

    <meta name="viewport" content="width=device-width, initial-scale=1">
http://developer.mozilla.org/en/docs/Mozilla/Mobile/Viewport_meta_tag

否则大多数移动设备会认为这是一个桌面网站,并模仿一个更大的视口,通常是980px。

OK。在这里:https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html#//apple_ref/doc/uid/TP40006509-SW25

"默认宽度980px"

最新更新