HTML 获取屏幕、浏览器、页面的高度宽度

本文详细介绍了如何使用JavaScript获取网页的各种尺寸信息,包括屏幕、浏览器窗口、页面的宽度和高度,以及鼠标在不同坐标系下的位置。适用于前端开发者理解和解决页面布局和交互问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  在没有声明DOCTYPE的IE中,浏览器显示窗口大小只能以下获取:


document.body.offsetWidth
document.body.offsetHeight
在声明了DOCTYPE的浏览器中,可以用以下来获取浏览器显示窗口大小:
document.documentElement.clientWidth
document.documentElement.clientHeight


   网页可见区域宽: document.body.clientWidth; 
   网页可见区域高: document.body.clientHeight; 
   网页可见区域高: document.body.offsetWidth;  //包括边线的宽
   网页可见区域高: document.body.offsetHeight; //包括边线的宽
   网页正文全文宽: document.body.scrollWidth; 
   网页正文全文高: document.body.scrollHeight; 
   网页被卷去的高: document.body.scrollTop;
   网页被卷去的左: document.body.scrollLeft;
   网页正文部分上: window.screenTop; 
   网页正文部分左: window.screenLeft; 
   屏幕分辨率的高: window.screen.height;
   屏幕分辨率的宽: window.screen.width;
   屏幕可用工作区高度: window.screen.availHeight; 
   屏幕可用工作区宽度: window.screen.availWidth;


   clientX 设置或获取鼠标指针位置相对于窗口客户区域的 x 坐标,其中客户区域不包括窗口自身的控件和滚动条。
   clientY 设置或获取鼠标指针位置相对于窗口客户区域的 y 坐标,其中客户区域不包括窗口自身的控件和滚动条。
   offsetX 设置或获取鼠标指针位置相对于触发事件的对象的 x 坐标。
   offsetY 设置或获取鼠标指针位置相对于触发事件的对象的 y 坐标。
   screenX 设置或获取获取鼠标指针位置相对于用户屏幕的 x 坐标。
   screenY 设置或获取鼠标指针位置相对于用户屏幕的 y 坐标。
   x 设置或获取鼠标指针位置相对于父文档的 x 像素坐标。
   y 设置或获取鼠标指针位置相对于父文档的 y 像素坐标。
--------------------- 
作者:sunlizhen 
来源:优快云 
原文:https://blog.youkuaiyun.com/sunlizhen/article/details/77198570 
版权声明:本文为博主原创文章,转载请附上博文链接!

 

 

本篇主要介绍Web环境中屏幕、浏览器及页面的高度、宽度信息。

目录

1. 介绍:介绍页面的容器(屏幕、浏览器及页面)、物理尺寸与分辨率、展示等内容。

2. 屏幕信息:介绍屏幕尺寸信息;如:屏幕、软件可用以及任务栏的高度和宽度。

3. 浏览器信息:介绍浏览器尺寸信息;如:浏览器、内部页面以及工具栏的高度和宽度。

4. 页面信息:介绍HTML页面尺寸信息;如:body总的、展示的高度和宽度。

 

一、介绍

1. 容器

一个页面的展示,从外到内的容器为:屏幕、浏览器以及页面本身。

HTML元素展现在页面内,页面展现在浏览器内,而浏览器展现在屏幕内。

通过Js的一些对象可以获取这些容器的高度、宽度。

 

2. 物理尺寸和分辨率

容器的尺寸是指当前分辨率下的高度、宽度,而不是物理高度、宽度。

如:一个22寸的显示器,屏幕分辨率为1366 * 768,那么获取到的屏幕高度为1366px,宽度为768px。

 

3. 展示图

 

二、屏幕信息

screen.height :屏幕高度。

screen.width :屏幕宽度。

screen.availHeight :屏幕可用高度。即屏幕高度减去上下任务栏后的高度,可表示为软件最大化时的高度。

screen.availWidth :屏幕可用宽度。即屏幕宽度减去左右任务栏后的宽度,可表示为软件最大化时的宽度。

任务栏高/宽度 :可通过屏幕高/宽度 减去 屏幕可用高/宽度得出。如:任务栏高度 = screen.height - screen.availHeight 。

 

三、浏览器信息

window.outerHeight :浏览器高度。

window.outerWidth :浏览器宽度。

window.innerHeight :浏览器内页面可用高度;此高度包含了水平滚动条的高度(若存在)。可表示为浏览器当前高度去除浏览器边框、工具条后的高度。

window.innerWidth :浏览器内页面可用宽度;此宽度包含了垂直滚动条的宽度(若存在)。可表示为浏览器当前宽度去除浏览器边框后的宽度。

工具栏高/宽度 :包含了地址栏、书签栏、浏览器边框等范围。如:高度,可通过浏览器高度 - 页面可用高度得出,即:window.outerHeight - window.innerHeight。

 

四、页面信息

body.offsetHeight :body总高度。

body.offsetWidth :body总宽度。

body.clientHeight :body展示的高度;表示body在浏览器内显示的区域高度。

body.clientWidth :body展示的宽度;表示body在浏览器内显示的区域宽度。

滚动条高度/宽度 :如高度,可通过浏览器内页面可用高度 - body展示高度得出,即window.innerHeight - body.clientHeight。

<think>根据用户需求,用户需要获取屏幕分辨率的宽度高度。参考引用内容,我们可以使用`window.screen.width`和`window.screen.height`来获取屏幕分辨率的宽度高度。 同时,为了确保代码的健壮性和兼容性,我们可以考虑使用现代JavaScript语法,并处理可能的兼容性问题(虽然现代浏览器都支持这些属性)。 此外,用户可能需要在页面加载时获取,或者通过事件触发(如按钮点击)来获取。这里给出一个简单的示例,展示如何获取并打印屏幕分辨率。 注意:屏幕分辨率是指整个屏幕的像素尺寸,与浏览器窗口大小无关。 我们将创建一个简单的HTML页面,包含一个按钮,点击按钮时弹出屏幕分辨率的提示框。 但是,如果用户只需要JavaScript代码片段,我们可以直接提供。 根据用户问题,我们只需要获取屏幕分辨率,所以直接使用: let screenWidth = window.screen.width; let screenHeight = window.screen.height; 下面给出一个完整的示例,包括HTML和JavaScript:</think>在 JavaScript 中获取屏幕分辨率的宽度高度,可以直接使用 `window.screen` 对象的属性。以下是具体实现方法: ### 获取屏幕分辨率 ```javascript // 获取屏幕宽度(像素) const screenWidth = window.screen.width; // 获取屏幕高度(像素) const screenHeight = window.screen.height; // 示例:打印分辨率 console.log(`屏幕分辨率: ${screenWidth} × ${screenHeight} 像素`); ``` ### 完整示例(带按钮触发) ```html <!DOCTYPE html> <html> <body> <button onclick="showResolution()">显示分辨率</button> <p id="result"></p> <script> function showResolution() { const width = window.screen.width; const height = window.screen.height; document.getElementById("result").innerHTML = `屏幕分辨率: ${width} × ${height} 像素`; } </script> </body> </html> ``` ### 关键属性说明 1. `window.screen.width` **屏幕的完整宽度**(像素),包括系统任务栏等不可用区域[^1][^2] 2. `window.screen.height` **屏幕的完整高度**(像素),包括系统任务栏等不可用区域[^1][^2] 3. `window.screen.availWidth` **可用工作区宽度**(排除任务栏等系统界面) 4. `window.screen.availHeight` **可用工作区高度**(排除任务栏等系统界面) > ⚠️ 注意:`screen.width/height` 返回的是**物理屏幕分辨率**,与浏览器窗口大小无关。如需获取浏览器视口尺寸,应使用 `window.innerWidth/innerHeight`。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值