js中getBoundingClientRect()方法

news2025/1/15 6:45:59

getBoundingClientRect()返回值是一个 DOMRect 对象,是包含整个元素的最小矩形(包括 padding 和 border-width)。该对象使用 left、top、right、bottom、x、y、width 和 height 这几个以像素为单位的只读属性描述整个矩形的位置和大小。除了 width 和 height 以外的属性是相对于视图窗口的左上角来计算的(卷起的高度是不被计算在内的)。

rectObject.top:元素上边到视窗上边的距离;
rectObject.right:元素右边到视窗左边的距离;
rectObject.bottom:元素下边到视窗上边的距离;
rectObject.left:元素左边到视窗左边的距离;
rectObject.width:是元素自身的宽
rectObject.height是元素自身的高
在这里插入图片描述

  <div id="container">
    <div id="son"></div>
  </div>
    <style>
   *{
     margin: 0; 
     padding: 0;
    }
    #container{
      width: 100px;
      height: 100px;
      background-color: red;
      margin-top: 20px;
      margin-left: 10px;
      position: relative;
    }
    #son{
      position: absolute;
      left: 10px;
      top: 10px;
      width: 50px;
      height: 50px;
      background-color: blue;
    }
  </style>
     let ele = document.getElementById('son');
    let obj  = ele.getBoundingClientRect();
    console.log(obj)

在这里插入图片描述
在这里插入图片描述

我们发现是相当于视口的:
高度方向:top=10+20=30
左侧:left= 10+10 =20

![在这里插入图片描述](https://img-blog.csdnimg.cn/2b6d9a6b14fa40a28c780f90a693e399.png

若给continer设置一个黑色的border,则高度和左侧均需要加1px,则为31px和21px
在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/387780.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

高性能网络I/O框架-netmap源码分析

前几天听一个朋友提到这个netmap&#xff0c;看了它的介绍和设计&#xff0c;确实是个好东西。其设计思想与业界不谋而合——因为为了提高性能&#xff0c;几个性能瓶颈放在那里&#xff0c;解决方法自然也是类似的。 netmap的出现&#xff0c;它既实现了一个高性能的网络I/O框…

【Storm】【五】Storm集成Kafka

Storm集成Kafka 一、整合说明二、写入数据到Kafka三、从Kafka中读取数据一、整合说明 Storm 官方对 Kafka 的整合分为两个版本&#xff0c;官方说明文档分别如下&#xff1a; Storm Kafka Integration : 主要是针对 0.8.x 版本的 Kafka 提供整合支持&#xff1b;Storm Kafka …

English Learning - L2-3 英音地道语音语调 小元音 [ʌ] [ɒ] [ʊ] [ɪ] [ə] [e] 2023.02.27 周一

English Learning - L2-3 英音地道语音语调 小元音 [ʌ] [ɒ] [ʊ] [ɪ] [ə] [e] 2023.02.27 周一课前活动练习方法大小元音总结小元音准备工作[ʌ] 中元音发音技巧对应单词的发音对应句子的发音常见的字母组合[ɒ] 后元音发音技巧对应单词的发音对应句子的发音常见的字母组合…

Spring——什么是事务?传播行为?事务隔离级别有哪些?

思维导图一、什么是事务&#xff1f;多条DML要么同时成功&#xff0c;要么同时失败Transaction&#xff08;tx&#xff09;二、事务的四个过程&#xff1a;开启事务&#xff08;start transaction&#xff09;执行核心业务代码提交事务&#xff08;如果核心业务处理过程中没有出…

真香,Grafana开源Loki日志系统取代ELK?

一、Loki是什么&#xff1f; Loki是由Grafana Labs开源的一个水平可扩展、高可用性&#xff0c;多租户的日志聚合系统的日志聚合系统。它的设计初衷是为了解决在大规模分布式系统中&#xff0c;处理海量日志的问题。Loki采用了分布式的架构&#xff0c;并且与Prometheus、Graf…

【前端】一个更底层库-React基础知识点

目录Reat是什么&#xff1f;为什么要使用React类库比较容易学习&#xff0c;API非常少。组件内聚&#xff0c;容易组合原生组件和自定义组件融合渲染状态/属性驱动全局更新commonjs生态圈/工具栏完善React基础知识JSX概述JSX嵌入变量Event事件组合组合CHILDREN总结大家好&#…

02-问题思考维度:抓住核心用户、场景化分析、需求收集与辨别、用户故事

文章目录2.1 抓住核心用户2.1.1 为什么要抓住核心用户2.1.2 核心用户的特征根据不同维度&#xff0c;描述核心用户2.1.3 如何抓住核心用户2.2 场景化分析2.2.1 场景五要素2.2.2 场景化分析方法2.2.3 场景化分析方法的应用2.3 需求收集与辨别2.3.1 需求的定义及层次2.3.2 需求收…

汇编相关问题

汇编语言期末复习题DX&#xff1a;单项选择题 DU&#xff1a;多项选择题 TK&#xff1a;填空题 MC&#xff1a;名词解释 v JD&#xff1a;简答题 CXFX&#xff1a;程序分析题 CXTK&#xff1a;程序填空题 BC&#xff1a;编程题第1章&#xff1a;基础知识1、在汇编语言程序的开发…

Vue2.0开发之——购物车案例-axios请求列表数据(45)

一 概述 项目导入axios HTTP 库axios请求数据列表将请求到的数据转存到data中 二 项目导入axios HTTP 库 2.1 axios介绍 Axios是一个基于promise 的 HTTP 库&#xff0c;可以用在浏览器和 node.js中 2.2 axios项目地址 https://www.npmjs.com/package/axios 2.3 axios安装…

excel的Countif函数使用详细教程

excel的Countif函数使用详细教程本教程通过七个示例讲解Countif函数使用教程&#xff0c;其中条件如何设置模糊值&#xff0c;统计固定长度的文本&#xff0c;统计大于某个值&#xff0c;统计等于某个值的&#xff0c;统计日期等。Countif函数作用&#xff1a;对指定单元格区域…

pycharm关联github、新建以及更新仓

此处已经默认你安装了git以及pycharm,这篇文章将会教给大家如何利用pycharm管理自己的github. 目录 pycharm关联github设置 Github创建新的仓 仓库的更新 pycharm:2022。不同版本界面略有不同。 pycharm关联github设置 设置PyCharm&#xff0c;打开File --> Settings -…

SAP 如何批量扩充(复制)科目到其他子公司(T-CODE: FS15)?

SAP 科目主数据管理常用的事务代码&#xff1a; 科目的创建分科目表层&#xff08;FSP0&#xff09;&#xff1b; 公司代码层&#xff08;FSS0&#xff09;&#xff1b; 集中创建&#xff08;FS00&#xff09;。 现假设我们成立一家新的子公司&#xff0c;需要把母公司的科目批…

博客系统程序(页面设计)

咱们学习javaEE的目的就是完成一个网站.在当前学习的基础上,已经可以完成我们的博客系统的页面的设计了!!!首先我们要进行统筹规划:首先我们的博客页面将会有4个页面:1.博客列表页2.博客详情页显示一个博客的具体内容:3.登录页就是用户输入用户名和页面的地方4.博客编辑页发布新…

1、JAVA 开发环境搭建 - JDK 的安装配置

文章目录一、下载 JDK81、官网地址&#xff1a;[**https://www.oracle.com**](https://www.oracle.com)二、安装 JDK1、鼠标右键安装包&#xff0c;以管理员身份运行(无脑下一步即可)2、细节说明三、配置环境变量1、为啥要配置环境变量呢&#xff1f;2、原因分析3、配置环境变量…

SpringMVC的完整执行流程

Java知识点总结&#xff1a;想看的可以从这里进入 目录2.5、SpringMVC流程2.5、SpringMVC流程 Spring MVC 框架主要由 DispatcherServlet、处理器映射、控制器、视图解析器、视图等组成&#xff0c;它和其他的MVC框架一样&#xff0c;以请求为驱动&#xff0c;围绕Servlet分派…

顺序表(一篇带你掌握顺序表)

目录 一、顺序表是什么 1.1 概念 1.2 分类 1.3 结构 二、顺序表的基本操作 2.1 前绪准备 2.2 初始化 2.3 扩容 2.5 尾插 2.6 打印 2.7 尾删 2.8 头插 2.9 头删 2.10 在pos位置插入 2.11 删除pos位置的数据 2.12 查找 三、完整代码 3.1 Test.c文件 3.2 SeqList.h…

C++之const_cast的用法

C的四种类型转换之const_cast 这里写目录标题前言const_cast1.new type为左值引用2. new type为函数类型的右值引用3.new type为对象类型的右值引用4.指向函数的指针和指向成员函数的指针不受约束5.通过非const访问路径修改const对象导致未定义行为6.const_cast只能用来修改指针…

Android onLayout布局流程解析

组件布局流程结论 1.&#xff09;layout流程始于ViewRootImpl的performLayout()方法&#xff0c;该方法会调用根View&#xff08;DecorView&#xff09;的layout()方法进行布局&#xff0c;因为DecorView是ViewGroup(FrameLayout),所以layout流程来到了ViewGroup&#xff08;其…

【C语言指针练习题】你真的学会指针了吗?

✨✨✨✨如果文章对你有帮助记得点赞收藏关注哦&#xff01;&#xff01;✨✨✨✨ 文章目录✨✨✨✨如果文章对你有帮助记得点赞收藏关注哦&#xff01;&#xff01;✨✨✨✨一维数组练习题&#xff1a;字符数组练习题&#xff1a;字符指针练习题&#xff1a;二维数组练习题&am…

LeetCode-63. 不同路径 II

题目来源 63. 不同路径 II 递归 class Solution {public int uniquePathsWithObstacles(int[][] obstacleGrid) {int row obstacleGrid.length-1;int col obstacleGrid[0].length-1;return process(row,col,0,0,obstacleGrid);}private int process(int row ,int col,int i…