offsetWidth、clientWidth、scrollWidth如何计算

offsetWidth、clientWidth、scrollWidth如何计算offsetWidth clientWidth scrollWidth 如何计算先贴一下测试用 html 很简单 lt DOCTYPEhtml gt lt htmllang en gt lt head gt lt metacharset UTF 8 gt lt metaname viewport content amp q

offsetWidth、clientWidth、scrollWidth如何计算

先贴一下测试用html,很简单

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> div{ height: 100px; width: 300px; padding: 10px; border: 5px solid black; outline: yellow solid 5px; /* overflow-y: scroll; */ } span{ /*display:block; width: 100px;*/ padding: 10px; border: 1px solid black; } </style> </head> <body> <div> This is a div.<br/> hahahhahahahahahahahahahahahahahahahahahahahahahahahahahahah<br/> Test Content.<br/> Test Content.<br/> Test Content.<br/> Test Content.<br/> </div> <span> This is a span. </span> <script> let div = document.getElementsByTagName("div")[0]; let span = document.getElementsByTagName("span")[0]; console.log(`div的offsetWidth${div.offsetWidth}`); console.log(`span的offsetWidth${span.offsetWidth}`); console.log(`div的clientWidth${div.clientWidth}`); console.log(`span的clientWidth${span.clientWidth}`); console.log(`div的scrollWidth${div.scrollWidth}`); console.log(`span的scrollWidth${span.scrollWidth}`); </script> </body> </html>
  • offsetWidth
    这里写图片描述

    MDN的解释:The HTMLElement.offsetWidth read-only property returns the layout width of an element. Typically, an element’s offsetWidth is a measurement which includes the element borders, the element horizontal padding, the element vertical scrollbar (if present, if rendered) and the element CSS width. If the element is hidden (for example, by style.display on the element or one of its ancestors to “none”), then 0 is returned.

  • clientWidth
    这里写图片描述

    MDN的解释:The Element.clientWidth property is zero for elements with no CSS or inline layout boxes, otherwise it’s the inner width of an element in pixels. It includes padding but not the vertical scrollbar (if present, if rendered), border or margin.

  • scrollWidth

这三个属性的都会对值进行四舍五入

This property will round the value to an integer. If you need a fractional value, use element.getBoundingClientRect().

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231532.html原文链接:https://javaforall.net

(0)
上一篇 2025年12月6日 下午6:01
下一篇 2025年12月6日 下午6:22


相关推荐

  • spring整合log4j_spring整合log4j

    spring整合log4j_spring整合log4j常用日志框架log4j、log4j2(log4j的升级版,最常用的)、logback(spring boot默认)、Jboss-logging…等slf4 是日志接口规范,代码对接slf4,实现和具体日志框架解耦,无需修改编码即可切换日志框架。修改pom依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-st

    2022年8月9日
    9
  • OSI七层_osi七层模型通俗解释

    OSI七层_osi七层模型通俗解释OSI七层

    2022年4月20日
    59
  • Java实现MD5加盐加密算法

    Java实现MD5加盐加密算法Java 实现 MD5 加盐加密算法 现在一般的 MD5 加密在网上随随便便就能解密 解密的网站有以下一个

    2026年3月17日
    3
  • 再次学习VUE笔记(持续更新)

    再次学习VUE笔记(持续更新)

    2021年7月12日
    105
  • reaver使用相关[通俗易懂]

    reaver使用相关[通俗易懂](非TP-LINK路由推荐–d9–t9参数防止路由僵死reaver-imon0-bMAC-a-S–d9–t9-vv)小结-学习时应因状况调整参数(-c后面都已目标频道为1作为例子)目标信号非常好: reaver -i mon0 -bMAC -a -S -vv -d0 -c1目标信号普通: reaver -i mon0 -bMAC

    2022年5月4日
    111
  • C++后端开发_用C开发网关

    C++后端开发_用C开发网关本文为博主2020年秋招提前批的c/c++后端开发面经整理,包括C/C++语言基础,计网,数据库,linux,操作系统,场景题,智力题和hr常问题。面试问题来自前人的工作和博主面试时遇到的值得记录的问题,其中面试题答案多为博主自行解答(并且面试的时候也基本是这样回答的),回答中都附上了参考资料的链接,全文共七万余字,仅供大家作为面试准备材料的参考。希望大家在准备面试的时候都能建立一个属于自己的题库,自己从网上寻找问题,然后自己进行解答,并且记录下来,这样在面试的时候就能行云流水般的回答上来。因此我把这份面

    2022年10月3日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号