为了使表格或者一些数据能能够自适应浏览器的宽度或者高度,就不可避免的要获取浏览器的尺寸

电脑屏幕尺寸的获取方式

window.screen.height //获取电脑屏幕分辨率的高度
window.screen.width //获取电脑屏幕分辨率的宽度window.screen.availHeight // 获取电脑屏幕的有效高度(例如 出去任务栏,有顶部栏的也会除去)
window.screen.availWidth //获取电脑屏幕的有效宽度

获取电脑屏幕的宽度或者高度是不用去考虑 兼容模式的问题
那必然 获取浏览器的尺寸就一定要注意兼容模式的问题

浏览器中尺寸(高度、宽度、滚动条高度)的获取方式

document.body.clientHeight //获取浏览器的body对象的高度
document.body.clientWidth //获取浏览器的body对象的宽度document.documentElement.clientHeight // 获取浏览器的可见高度
document.documentElement.clientHeight //获取浏览器的可见宽度

由于历史原因 ,浏览器对页面的渲染会存在两种模式:

1 标准模式 旧的渲染方法(ie)

2 兼容模式 W3C标准规范
两种模式由于计算方式不同 获取同一个容器的高度和宽度 会根据 margin border padding 有一定区别

这个标签如果设置了就是兼容模式 会按照w3c的标准去解析html页面 但是如果没有设置会按照 backCompat 也就是标准模式 又称怪异模式(不同的浏览器会按照自己的解析方式去解析)这种就会在不同的浏览器中出现不可知的问题!

一般获取尺寸是要考虑兼容:

//获取浏览器的高度
function getClientHeight(domId){//domId 为当前容器的idvar roolEl;//设置一个临时变量if(domId = null){//document.compatMode用来获取当前浏览器的模式//CSS1Compat 为兼容模式 W3c指定 roolEl = document.compatMode == "CSS1Compat" ? document.documentElement : document.body;}else{roolEl = document.ElementById(domId);//获取指定容器的对象}var rootHd = parentInt(roolEl.clientHeight);//获取当前容器的高度return rootHd;//返回当前容器高度数据}

宽度的获取和高度差不多 使用 clientWidth即可;

参考资料:

document.body.clientHeight 和 document.documentElement.clientHeight 的区别

依水间的博客:document.compatMode介绍

【DOCTYPE】兼容模式和标准模式

doctype的作用

容器高度或者宽度的获取方式相关推荐

  1. html高度随宽度编号,纯css实现容器高度随宽度等比例变化的四种解决方案

    使用一个隐藏的图片来实现 这个方法是我最推荐的,因为不需要考虑任何兼容性,PC移动完美运行.除了增加了一个dom结构,但是相对与一个页面成百上千的代码来说,不值一提 我们知道,div容器如果不给定高度 ...

  2. css 设置容器高度等于宽度,设置容器的宽高一致。

    当容器的内边距设置100%时,取得是容器的宽度单位. height:0;padding-bottom:100%; height:0;padding:50% 0;

  3. 在html上js添加宽度,js 获取div高度并重新设置div高度与宽度

    js 获取div高度并重新设置div高度与宽度 js 获取div高度并重新设置div高度与宽度 var $=function(id) { return document.getElementById( ...

  4. java中如何设置浏览器宽度_[Java教程]关于JS中获取浏览器高度和宽度值的多种方法(多浏览器)_星空网...

    关于JS中获取浏览器高度和宽度值的多种方法(多浏览器) 2017-08-07 0 三种浏览器获取值方法 IE中: document.body.clientWidth ==> BODY对象宽度 d ...

  5. js 获取浏览器高度和宽度值

    IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.d ...

  6. vue如何获取div的宽度_vue获取dom元素高度的方法

    获取DOM高度: 要在钩子mounted里面dom结构生成后去获取dom的高度,宽度,修改样式等操作(参照生命周期钩子mounted语法:https://cn.vuejs.org/v2/api/#mo ...

  7. 获取svg元素的高度和宽度(或其他属性)

    下面给出了基于svg元素的js对象获取属性的方法(jqury对象可以转成js对象获取,主要关注点是svg同时支持以attribute的方式和style的方式来定义高度和宽度,但两种定义方式获取属性的方 ...

  8. js 如何获取浏览器的高度和宽度

    IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.d ...

  9. 不同浏览器JS获取浏览器高度和宽度

    摘自:http://blog.csdn.net/lai_gb/archive/2009/07/04/4320956.aspx IE中: document.body.clientWidth ==> ...

最新文章

  1. Keras运行代码时出现的问题及解决方法
  2. tomcat下只有.class文件 没有java文件_解决tomcat发布工程后,WEB-INF/classes下文件不编译的问题...
  3. SQLserver查看某个视图的创建语句
  4. 年后来广州第一天,写篇水文
  5. GenerateProjectFiles.bat分析
  6. Event Recommendation Engine Challenge(基础版)---代码
  7. git批量删除文件和批量提交
  8. recv函数返回0_函数VLOOKUP与LOOKUP的PK,大战一触即发 Excel神技能!
  9. cuda stream
  10. jvisualvm.exe远程连接tomcat
  11. 华为有国产芯片的服务器吗,华为国产电脑上市!还有一大批国产自主电脑发布:采用国产芯/系统...
  12. Oracle EBS: ASCP 学习
  13. Xshell设置密钥登录CentOS6.5_64位(图文版)
  14. 海外市场鸿蒙系统,华为海外市场已恢复,鸿蒙系统首发应用在荣耀智慧屏,8月上市...
  15. 8.25 ccpc 比赛总结
  16. web页面-JS/DOM/BOM/窗口滚动/修改内容/上传文件
  17. OCSNG inventory | 介绍
  18. 野火学习笔记(8) —— RCC —— 使用 HSE/HSI 配置时钟
  19. A* 流程+代码详细注释
  20. socket 通信 error:88

热门文章

  1. 阿里系支持哈罗单车,共享单车再起风云,ofo最受伤
  2. AI内容生成工具列表,可用于生成 AI 内容的工具列表。具有图像生成、文本生成等功能。
  3. sqlite入门基础(一):sqlite3_open,sqlite3_exec,slite3_close
  4. 优化爬山法之八皇后问题
  5. 用这个C语言骰子代码做选择
  6. java中是什么意思_java中什么意思?
  7. vlan的几种划分方式
  8. PAT_乙级_1008_筱筱
  9. 百度的春晚战事:如何扛住腾讯、阿里都宕机的量?
  10. chat--hxxdfd