每个HTML元素都有以下属性

offsetWidth:内容+内边距(padding)+边框+滚动条宽度,以css像素返回它的屏幕尺寸。

offsetHeight:(同上)

offsetLeft:如果offsetParent是null的时候是文档坐标,但对于已定位元素的后代元素和一些其他元素(如表格单元),这些属性返回的是相对于祖元素的而非文档。

offsetTop:(同上)

offsetParent:

 备注:如果对文档坐标和视口坐标不理解可以查看博文《文档坐标和视口坐标》

clientWidth:内容+内边距(padding)

clientHeight:(同上)

clientLeft:没什么用,返回元素的内边距的外边缘和他们的边框的外边缘之间的水平距离,通常这些值就等于左边的边框宽度。

clientTop:没什么用,返回元素的内边距的外边缘和他们的边框的外边缘之间的垂直距离,通常这些值就等于上边的边框宽度。

注意:对于类似<i>、<code>、<span>这些内联元素,clientWidth、clientHeight、clientLeft、clientTop总是返回0。

有一个特殊案例,在文档的根元素上查询这些属性时,他们返回值和窗口的innerWidth和innerHeight属性值相等。

scrollWidth:内容+内边距(padding)+任何溢出内容的尺寸,如果内容正好和内容区域匹配而没有溢出,这些属性与clientWidth和clientHeight相等。

scrollHeight:(同上)

scrollLeft:元素滚动条的位置,是可写属性,通过设置它们让元素中的内容滚动。

scrollTop:(同上)

注意:HTML元素并没有类似Window对象的scrollTo()方法。

window.scrollTo(x,y)

window.scroll(x,y)

window.scrollBy(x,y)   //不同于以上两个方法,它的参数相对的

setIntervar(function(){scrollBy(0,10)},200)  //每200毫秒向下滚动10像素。注意它无法关闭。

HTML元素的offsetWidht、clientWidth、scrollWidth属性区别的更多相关文章

  1. offsetWidth clientWidth scrollWidth 的区别

    了解 offsetWidth clientWidth scrollWidth 的区别 最近需要清除区分开元素的width,height及相应的坐标等,当前这篇用来区分offsetWidth clien ...

  2. html中元素的id和name的区别(2016-1-22)

    HTML中元素的Id和Name属性区别 一直以来一直以为在html中,name和id没什么区别,今天遇到一个坑才发现(PHP获取不到表单数据,原因:元素没有name,只定义了id),这两者差别还是很大 ...

  3. Javascript:scrollWidth,clientWidth,offsetWidth的区别(转)

    网页可见区域宽:document.body.clientWidth; 网页可见区域高:document.body.clientHeight; 网页可见区域高:document.body.offsetW ...

  4. 转:scrollWidth,clientWidth,offsetWidth的区别

    scrollWidth:对象的实际内容的宽度,不包边线宽度,会随对象中内容超过可视区后而变大. clientWidth:对象内容的可视区的宽度,不包滚动条等边线,会随对象显示大小的变化而改变. off ...

  5. HTML元素的ID和Name属性的区别

    HTML元素的ID和Name属性的区别今天突然兴致来了,想深究下这两属性的具体区别最classical的答案:ID就像是一个人的身份证号码,而Name就像是他的名字,ID显然是唯一的,而Name是可以 ...

  6. js中clientWidth, scrollWidth, innerWidth, outerWidth,offsetWidth的区别

    js中clientWidth, scrollWidth, innerWidth, outerWidth,offsetWidth的属性汇总,测试浏览器:ie7~ie11.chrome 和 firefox ...

  7. html元素中id和name的区别

    可以说几乎每个做过Web开发的人都问过,到底元素的ID和Name有什么区别阿?为什么有了ID还要有Name呢?! 而同样我们也可以得到最classical的答案:ID就像是一个人的身份证号码,而Nam ...

  8. jQuery获得元素位置offset()和position()的区别

    jQuery获得元素位置offset()和position()的区别 jQuery 中有两个获取元素位置的方法offset()和position(),这两个方法之间有什么异同 offset(): 获取 ...

  9. apple-touch-icon-precomposed 和 apple-touch-icon属性区别

    苹果safari浏览器当中apple-touch-icon-precomposed 和 apple-touch-icon属性是有区别的,之前在网上查了下相关的资料和苹果的开发文档手册,对这两中属性区别 ...

随机推荐

  1. Web上的支持的图片格式以及它们之间的区别

    一.GIF(图形交换格式) GIF格式的图片最多只能保存256中颜色,该格式支持透明色,支持动画效果. 二.JPEG(联合图像专家组) JPEG格式不支持透明色及动画,颜色可达1670种. 三.PNG ...

  2. ios cell常用属性

    1.设置UITableViewCell的accessoryView 有时候我们需要设置cell的一些样式,比如下图, 这个就是设置了cell的accessory属性的内容,如果我们想在上面显示Swit ...

  3. sqlplus 设置

    set heading offset line 40001.设置页面显示总行数show pagesize; //首先查看目前的pagesize,默认是14set pagesize 100; //将pa ...

  4. 数据库IO简介

    IO有四种类型:连续读,随机读,随机写和连续写,连续读写的IO size通常比较大(128KB-1MB),主要衡量吞吐量,而随机读写的IO size比较小(小于8KB),主要衡量IOPS和响应时间.数 ...

  5. JS判断IE版本并在页面显示内容

    <script type="text/javascript"> var isIE = function (ver) { var b = document.createE ...

  6. codevs 1702素数判定2

    Miller-Rabin算法实现,但是一直被判题程序搞,输入9999999999得到的结果分明是正确的但是一直说我错 #include <cstdio> #include <cmat ...

  7. Python读取xml报错解析--ExpatError: not well-formed (invalid token)

    xml文件内容如代码所示存入的名字为login.xml: <?xml version="1.0" encoding="utf-8"?> <in ...

  8. MyBatis魔法堂:即学即用篇

    一.前言                   本篇内容以理解MyBatis的基本用法和快速在项目中实践为目的,遵循Make it work,better and excellent原则. 技术栈为My ...

  9. markdown编辑器使用建议

    markdown在线编辑器: https://stackedit.io/editorhttp://dillinger.io/ windows 下建议使用 MarkdownPad linux 下建议使用 ...

  10. 《精通Hibernate:Java对象持久化技术详解》目录

    图书信息:孙卫琴 电子工业出版社 第1章 Java应用分层架构及软件模型: 1.1 应用程序的分层体系结构 1.1.1 区分物理层和逻辑层 1.1.2 软件层的特征 1.1.3 软件分层的优点 1.1 ...