首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

详解DOM对象中clientWidth、offsetWidth等属性

但是对于初学者来说(包括我),看到这些就头疼,因为感觉意思都相近,但作用却不同,所以今天天我就来捋一捋,搞清楚,后面好干活。好吧,废话不多说,开始吧。 先上一下示例代码,下面要用到。...clientWidth与只与元素有关,它的计算方式如下。 clientWidth=width(样式中设置的)+左padding+右padding-垂直滚动条宽度。...offsetWidth与offsetHeight有个特点,就是这两个属性的值只与该元素有关,与周围元素(父级和子级元素无关)。...和offsetHeight不同的是,它们受到offsetParent的影响(offsetParent上面有讲), MSDN上对offsetLeft的定义是: The HTMLElement.offsetLeft...也就是说应该是: offsetLeft=(offsetParent的padding-left)+(中间元素的offsetWidth)+(当前元素的margin-left)。

4.1K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    scrollWidth,clientWidth,offsetWidth的区别

    当一行内容超出文本框的宽度,就有横向滚动条出来了,scrollWidth的值就变了。 scrollWidth是对象实际内容的宽度。...posTop的数值其实和top是一样的,但区别在于,top固定了元素单位为px,而posTop只是一个数值(这一点可以通过alert(“top=”+id.style.top)和alert(“posTop...因为已经指定了元素的height为100px,所以offsetHeight始终为100px;内部元素为250px,而容器元素只有100px,那么还有150px的内容它无法显示出来,但它却是实际存在的,所以...clientHeight:都认为是内容可视区域的高度,也就是说页面浏览器中可以看到内容的这个区域的高度,一般是最后一个工具条以下到状态栏以上的这个区域,与页面内容无关。...= width offsetHeight = height (需要提一下:CSS中的margin属性,与clientWidth、offsetWidth、clientHeight、offsetHeight

    2.2K20

    你记住JS中offsetWidth、clientWidth、width、scrollWidth、clientX、screenX、offsetX、pageX吗?

    ,不包括内边距、边框和外边距)style.height //返回元素的高度(包括元素高度,不包括内边距、边框和外边距)scrollWidth //返回元素的宽度(包括元素宽度、内边距和溢出尺寸,不包括边框和外边距...),无溢出的情况,与clientWidth相同scrollHeigh //返回元素的高度(包括元素高度、内边距和溢出尺寸,不包括边框和外边距),无溢出的情况,与clientHeight相同style.width...返回的是字符串,如28px,offsetWidth返回的是数值28;style.width/style.height与scrollWidth/scrollHeight是可读写的属性,clientWidth.../clientHeight与offsetWidth/offsetHeight是只读属性style.width的值需要事先定义,否则取到的值为空。...而且必须要定义在html里(内联样式),如果定义在css里,style.height的值仍然为空,但元素偏移有效;而offsetWidth则仍能取到。

    96340

    理解Go语言中的函数与方法:相同之处与不同之处

    在Go语言中,函数和方法是两种基本的代码组织和封装机制。尽管它们在语法和用途上有一些不同,但它们的核心都是相同的:执行一段特定的代码。...在这篇文章中,我们将详细探讨Go语言中的函数和方法,了解它们的相同之处和不同之处。 函数和方法的基本定义 在Go语言中,函数是一个独立的代码块,可以接收一些参数,执行一些操作,然后返回一个或多个结果。...return a + b } func main() { result := add(1, 2) fmt.Println(result) // 输出:3 } 另一方面,方法是与特定类型关联的函数...命名空间:函数和方法有各自的命名空间,这意味着你可以在同一个包中有一个函数和一个方法拥有相同的名字,只要它们的接收者类型不同就可以。...总结一下,Go语言的函数和方法是执行代码的两种基本方式。理解它们的相同之处和不同之处,可以帮助我们更好地组织和封装代码,编写出更优雅、更高效的Go程序。

    23120

    scrollwidth和clientwidth_vue监听页面滚动

    HTML:scrollLeft,scrollWidth,clientWidth,offsetWidth到底指的哪到哪的距离之完全详解 scrollHeight: 获取对象的滚动高度。...offsetTop 与 offsetParent 很复杂,不同浏览器有不同解释,浮动一下解释又不同了,所以我们一般只要理解通过二者可以获得控件在浏览器中的绝对位置即可。...offsetLeft 与 style.left、offsetWidth 与 style.width、offsetHeight 与 style.height 也是同样道理。...同理 clientWidth、offsetWidth 和 scrollWidth 的解释与上面相同,只是把高度换成宽度即可。...对于不可以滚动的元素,这些值总是0. 4.scrollHeight,scrollWidth: 不管有多少对象在页面上可见,他们得到的是整体. 5.style.left: 定位元素与包含它的矩形左边界的偏移量

    1.8K10

    光纤与铜缆的插入损耗相同和不同点分析

    光纤与铜缆的插入损耗有哪些相同点 尽管有诸多不同因素影响铜缆和光纤的插入损耗,但无论哪种介质,过长的长度和连接不良都是两个重要原因。...光纤与铜缆的插入损耗有哪些不同点 与铜缆相比,光纤的插入损耗非常低,所以被广泛用于较长距离和远程骨干网应用。...例如,当距离为100米时,光纤信号损耗仅大约为原始信号强度的3%,而相同距离6A类铜缆的信号损耗大约为其原始信号强度的94%。...在铜缆布线中,衰减与线规的关系也非常大——23 AWG线缆的衰减比相同长度24 AWG (更细)线缆的衰减小。...此外,与实芯铜导体相比,绞合电缆的衰减大20-50%,所以实芯导线用于铜缆通道中较长距离的链路部分,绞合导线仅限于较短的跳线。 对于铜缆布线,衰减也与温度有关。

    1.1K10

    JS 获取浏览器窗口大小clientWidth、offsetWidth、scrollWidth「建议收藏」

    height (需要提一下:CSS中的margin属性,与clientWidth、offsetWidth、clientHeight、offsetHeight均无关) 假设 obj 为某个 HTML 控件...offsetTop 与 offsetParent 很复杂,不同浏览器有不同解释,浮动一下解释又不同了,所以我们一般只要理解通过二者可以获得控件在浏览器中的绝对位置即可。...offsetLeft 与 style.left、offsetWidth 与 style.width、offsetHeight 与 style.height 也是同样道理。...同理 clientWidth、offsetWidth 和 scrollWidth 的解释与上面相同,只是把高度换成宽度即可。...对于不可以滚动的元素,这些值总是0. 4.scrollHeight,scrollWidth: 不管有多少对象在页面上可见,他们得到的是整体. 5.style.left: 定位元素与包含它的矩形左边界的偏移量

    7.5K20

    详解各种获取元素宽高及位置的属性

    offsetWidth / offsetHeight offsetWidth HTMLElement.offsetWidth 是一个只读属性,返回一个元素的布局宽度。...一个典型的(各浏览器的offsetWidth可能有所不同)offsetWidth是测量包含元素的边框(border)、水平线上的内边距(padding)、竖直方向滚动条(scrollbar)(如果存在的话...scrollWidth Element.scrollWidth 是一个只读属性,以px为单位返回元素的内容区域宽度或元素的本身的宽度中更大的那个值。...var scrollWidth = element.scrollWidth; scrollHeight Element.scrollHeight 是一个只读属性,它是一个元素内容高度的度量,包括由于溢出导致的视图中不可见内容...没有垂直滚动条的情况下,scrollHeight值与元素视图填充所有内容所需要的最小值clientHeight相同。包括元素的padding,但不包括元素的border和margin。

    4K80

    html中offsetTop、clientTop、scrollTop、offsetTop各属性介绍(转)

    HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth scrollHeight:获取对象的滚动高度 scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离...scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 scrollWidth:获取对象的滚动宽度 offsetHeight:获取对象相对与版面或由父坐标offsetParent...offsetLeft 与 style.left、offsetWidth 与 style.width、offsetHeight 与 style.height 也是同样事理。...同理 clientWidth、offsetWidth 和 scrollWidth 的申明与上方雷同,只是把高度换成宽度即可。...同理 clientWidth、offsetWidth 和 scrollWidth 的申明与上方雷同,只是把高度换成宽度即可。

    7.8K20

    clientWidth、offsetWidth等介绍

    (包括边线的宽) 网页可见区域高:document.body.offsetHeight (包括边线的宽) 网页正文全文宽:document.body.scrollWidth 网页正文全文高:document.body.scrollHeight...屏幕可用工作区宽度:window.screen.availWidth HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth scrollHeight...scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 scrollWidth:获取对象的滚动宽度...= width offsetHeight = height (需要提一下:CSS中的margin属性,与clientWidth、offsetWidth、clientHeight、offsetHeight...(包括边线的宽) 网页可见区域高: document.body.offsetHeight (包括边线的高) 网页正文全文宽: document.body.scrollWidth 网页正文全文高:

    63920

    js 获取屏幕各种宽高的方法(浏览器兼容)

    :document.body.clientHeight  网页可见区域宽:document.body.offsetWidth (包括边线的宽)  网页可见区域高:document.body.offsetHeight...(包括边线的宽)  网页正文全文宽:document.body.scrollWidth  网页正文全文高:document.body.scrollHeight  网页被卷去的高:document.body.scrollTop...  HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth  scrollHeight: 获取对象的滚动高度。 ...scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离  scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离  scrollWidth:获取对象的滚动宽度...= width offsetHeight = height (需要提一下:CSS中的margin属性,与clientWidth、offsetWidth、clientHeight、offsetHeight

    3.6K100

    JS获取浏览器窗口大小 获取屏幕,浏览器,网页高度宽度(转)

    (包括边线的宽)  网页可见区域高:document.body.offsetHeight (包括边线的宽)  网页正文全文宽:document.body.scrollWidth  网页正文全文高...,clientWidth,offsetWidth  scrollHeight: 获取对象的滚动高度。 ...scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离  scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离  scrollWidth:获取对象的滚动宽度...= width  offsetHeight = height  (需要提一下:CSS中的margin属性,与clientWidth、offsetWidth、clientHeight、offsetHeight...要得到窗口的尺寸,对于不同的浏览器,需要使用不同的属性和方法:若要检测窗口的真实尺寸,在Netscape下需要使用Window的属性;在IE下需要 深入Document内部对body进行检测;在DOM环境下

    16.2K10

    一文搞懂 JavaScript 中 DOM 相关的距离

    = 200(可见区域) + 5(padding) + 5(padding) textarea.offsetWidth = 200(可见区域) + 5(padding) + 5(padding) +...padding) - 17(滚动条宽度) textarea.scrollWidth = 200(可见区域) + 5(padding) + 5(padding) - 17(滚动条宽度) textarea.offsetWidth... () {     console.log(textarea.clientWidth, textarea.scrollWidth, textarea.offsetWidth);     console.log...clientTop:相当于元素上border(border-top)的宽度 1.2、scroll系列 scrollWidth = width(内容实际宽度,包括不可见区域) + padding...,并给出了不同浏览器下的兼容性: 三、鼠标事件相关的坐标距离 鼠标事件中有很多描述鼠标事件发生时的坐标信息的,给大家介个图看看: 这么多的坐标位置到底有什么区别呢?

    1.4K31

    JS获取浏览器窗口大小 获取屏幕,浏览器,网页高度宽度

    (包括边线的宽) 网页可见区域高:document.body.offsetHeight (包括边线的宽) 网页正文全文宽:document.body.scrollWidth 网页正文全文高:document.body.scrollHeight...:window.screen.availWidth HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth scrollHeight: 获取对象的滚动高度...scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 scrollWidth:获取对象的滚动宽度...(需要提一下:CSS中的margin属性,与clientWidth、offsetWidth、clientHeight、offsetHeight均无关) 网页可见区域宽: document.body.clientWidth...要得到窗口的尺寸,对于不同的浏览器,需要使用不同的属性和方法:若要检测窗口的真实尺寸,在Netscape下需要使用Window的属性;在 IE下需要深入Document内部对body进行检测;在DOM环境下

    8.1K30

    Js窗体window大小设置(转)

    网页可见区域宽:document.body.clientWidth  网页可见区域高:document.body.clientHeight  网页可见区域宽:document.body.offsetWidth...(包括边线的宽)  网页可见区域高:document.body.offsetHeight (包括边线的宽)  网页正文全文宽:document.body.scrollWidth  网页正文全文高:document.body.scrollHeight...  屏幕可用工作区宽度:window.screen.availWidth  HTML精确定位: scrollLeft,scrollWidth,clientWidth,offsetWidth  scrollHeight...scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离  scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离  scrollWidth:获取对象的滚动宽度...= width  offsetHeight = height  (CSS中的margin属性,与clientWidth、offsetWidth、clientHeight、offsetHeight均无关

    6.1K20
    领券