浅谈DOM常见属性_位置/宽高

更新日期: 2022-02-28 阅读: 1.7k 标签: 位置

1.常见属性

客户宽高    clientWidth    clientHeight   //元素自身宽高+padding-滚动条
偏移宽高    offsetWidth    offsetHeight   //width+padding+border  实际占位的大小
滚动条宽高   scrollWidth    scrollHeight   //滚动条宽高


2.获取位置

clientLeft   clientTop     //客户坐标
offsetLeft offsetTop // 相对父元素的定位 //比如left:100,top:100,就是这个值

当内部内容大于外部元素高度时,写入overflow:auto,就会产生滚动条,在所溢出去的就是滚动条

滚动条事件:  

div5.onscroll=function(){
  console.log(div5.scrollLeft,div5.scrollTop);
}    
div5.getBoundingClientRect();  //获取元素范围矩形 其中包括距离视口的距离,已经元素的宽高,还有left,top,bottom,right 


3.获取可视宽高,获取html的宽高(一屏高度) 

document.documentElement   //打印结果就是HTML

下面这个结果就是可视高度,也就可以理解为一屏的高度;

document.documentElement.clientWidth , document.documentElement.clientHeight 
//窗口宽-滚动条宽(可视区域宽度),高度时可视区域


4.整个文档所占的高度

document.body.scrollHeight;//即若文档高度大于一屏,则右侧有滚动条;


5.滚动条位置

scrollLeft   scrollTop   //可以修改      滚动条坐标  
document.documentElement.scrollTop;//  获取滚动条位置,对应的是HTML标签,一般使用这个
document.body.scrollTop; //对应的是body标签,


6.获取body宽高

document.body.clientWidth,document.body.clientHeight //窗口宽度-滚动条-body的margin*2,高度就是实际内容的高度;


7.document.documentElement.offsetWidth

document.documentElement.offsetWidth,document.documentElement.offsetHeight) ; //窗口宽-滚动条宽 高度是实际内容高度
document.body.offsetWidth,document.body.offsetHeight); //html的offset宽高-body的margin*2


8.附件  解析图


本文内容仅供个人学习/研究/参考使用,不构成任何决策建议或专业指导。分享/转载时请标明原文来源,同时请勿将内容用于商业售卖、虚假宣传等非学习用途哦~感谢您的理解与支持!

链接: https://fly63.com/article/detial/11224

css怎么设置元素位置不变?

我们经常碰到的需求是希望页面某个元素固定在浏览器的一个位置,无论如何滚动滚动条,位置不变,就例如经常看到的弹出广告。方法一般是使用js控制,或者使用css。这里我写的是css的控制方法。在IE7以上版本及firefox、opera、safari里

jQuery实现DOM元素拖拽交换位置

html + bootstrap布局画3个面板。监听面板的的 mousedown事件。记录当前对应面板的位置target_index,设置面板透明拖动。监听当前被拖动的面板的mousemove事件。

JavaScript的书写位置

JS 有3种书写位置,分别为行内、内嵌和外部。可以将单行或少量 JS 代码写在HTML标签的事件属性中(以 on 开头的属性),如:onclick,注意单双引号的使用:在HTML中我们推荐使用双引号, JS 中我们推荐使用单引号

js获取滚动条位置

在前端项目开发中,页面的滚动条是经常出现的,那么js如何获取滚动条位置呢?pageXOffset 和 pageYOffset 属性返回文档在窗口左上角水平和垂直方向滚动的像素。

手把手教你:用HTML5获取用户位置并显示具体地址

现在很多网站和应用都需要知道用户在哪里,比如找附近的店铺、叫外卖、查看本地天气或者分享位置。HTML5提供了一个方便的功能,可以直接在浏览器里获取用户的地理位置,不需要额外安装什么。

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!