【问题标题】:Finding current width of the web page in my browser [closed]在我的浏览器中查找网页的当前宽度[关闭]
【发布时间】:2014-03-11 02:20:21
【问题描述】:

有什么方法可以找出页面的当前宽度是多少?我正在尝试使用 CSS 媒体查询创建响应式网页。
那么当我调整页面大小的时候,能查出当前页面的宽度是多少吗?

编辑:

所以获得宽度的一种方法是使用开发人员工具,而我发现有用的第二种方法是

$(window).width();

就我而言,我实际上是在寻找第一种方法。

【问题讨论】:

  • 在您喜欢的浏览器中使用开发者工具。 (一般F12打开)
  • Chrome 会在您重新调整页面大小时告诉您。
  • 你的意思是编程?或者您的意思只是调整浏览器的大小?
  • @j08691 :我的意思是,实际上是重新调整大小。
  • @oGeez:开发者工具和我们在检查元素中看到的一样吗?

标签: html css browser


【解决方案1】:

您无法在纯 HTML/CSS 中获取浏览器视图的宽度。但是,您可以使用 Javascript:

var viewportWidth  = document.documentElement.clientWidth;
var viewportHeight = document.documentElement.clientHeight;

如果您只是想要宽度用于调试目的,您可以在开发者工具中找到浏览器大小。

例如,在 Firefox 上,您可以打开 Developers Tools (Ctrl+Shift+I),然后使用 Adaptive View 面板(在右侧可用),注意此屏幕截图左上角的真实视口:

【讨论】:

  • 再次为 SO-inception 制作屏幕截图 ;)
  • @DanielLisik 如你所愿:i.imgur.com/QmGPWSW.png:D
  • 需要更多递归。
  • 顺便说一句,可以(至少在 Windows 上)将浏览器窗口拉伸到多个监视器上,以模拟一个可笑的宽屏幕。不是必须的,只是有趣,因为浏览器上的开发者工具会反映这一点。
【解决方案2】:
  • 有许多浏览器插件专门用于设置/显示窗口大小以实现响应式设计。
  • Chrome 开发者工具/Firebug/类似工具将显示元素内容的宽度、内边距、边框和边距。
  • 您可以use JavaScript

【讨论】:

    【解决方案3】:

    您可以使用screen.width或screen.height来获取当前屏幕的宽度和高度。

    如果你使用 jQuery,你可以使用 jQuery 方法获取窗口或文档的大小:

    $(window).height();   // returns height of browser viewport
    $(document).height(); // returns height of HTML document
    $(window).width();   // returns width of browser viewport
    $(document).width(); // returns width of HTML document
    

    【讨论】:

    • 干净,但需要 jQuery。
    • -1 仅用于 this 使用 jQuery。矫枉过正。
    • 如果我已经在使用jquery(我的意思是没有专门为这个东西包含库),我不应该使用这些方法吗?
    【解决方案4】:

    我不确定您是否需要当前宽度来进行响应式设计。您要做的是告诉浏览器“如果您小于 XXX px”,然后以这种方式显示这部分。

    在我看来,最简单的方法是在 body 上添加一个类。这是一个使用 enquire.js 的示例:

    enquire.register("screen and (max-width:1100px)", {
       match : function() {$('body').addClass('small-screen');},      
       unmatch : function() {$('body').removeClass('small-screen');}
    }); 
    

    通过这种方式,如果宽度小于 1100 像素,您的页面主体将获得一个“小屏幕”类。您可以轻松地将此类与 CSS 一起使用来进行响应式设计:

    .small-screen .menu {
        display: none;
    }
    

    【讨论】:

      【解决方案5】:

      Javascript

      // set the initial width
      var viewportWidth = document.documentElement.clientWidth;
      var el = document.getElementById("width");
      el.innerHTML = viewportWidth + "px";
      
      // on resize
      window.addEventListener('resize', function(event){
      
          var viewportWidth = document.documentElement.clientWidth;
          var el = document.getElementById("width");
          el.innerHTML = viewportWidth + "px";
      
      });
      

      HTML

      <h1 id="width"></h1>
      

      JSFiddle Demo

      【讨论】:

        【解决方案6】:

        Firefox 现在内置了一个很棒的工具,叫做Responsive Design View。它位于工具菜单 >> Web 开发人员 >> 响应式设计视图下。它允许您重新调整视口的大小,并在您更改视口时显示尺寸。

        【讨论】:

        • Opera 中的类似功能(开发人员 > 开发人员工具或 CTRL+Shift+I),元素选项卡旁边有一个按钮,看起来像平板电脑上的手机,称为“切换设备工具栏”,允许调整和查看视口的当前大小。
        猜你喜欢
        • 2012-08-22
        • 2015-11-17
        • 2016-02-15
        • 1970-01-01
        • 2015-01-04
        • 2012-10-30
        • 2017-11-11
        • 2014-08-25
        • 1970-01-01
        相关资源
        最近更新 更多