offsetHeight、offsetWidth、offsetLeft、offsetTop

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        * {  margin: 0; padding: 0;}
        #box{
            width: 100px;
            height: 100px;
            border: 30px solid red;
            padding: 20px;
            position: relative;
        }
        #box1{
            height: 100px;
            width: 100px;
            background: blue;
            position: absolute;left: 10px;top:10px;
            padding: 10px;
        }
    </style>
</head>
<body>
<div id="box">
    <div id="box1">
       <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
        <p>offset相关测试</p>
    </div>
</div>
<script>
    window.onload = function () {  
        console.log(box.offsetHeight);//200
        console.log(box.offsetWidth);//200
        console.log(box.offsetLeft);//0
        console.log(box.offsetTop);//0
        console.log('-------------------------------');
        console.log(box1.offsetHeight);//120
        console.log(box1.offsetWidth);//120
        console.log(box1.offsetLeft);//10
        console.log(box1.offsetTop);//10
    }
</script>
</body>
</html>

1、offsetWidth实际获取的是盒模型

offsetWidth = width + border + padding

  • offsetWidth=Width+(left)border+(right)border+(left)padding+(right)padding
-------------------------------------------------------------------------------------------

2、offsetHeight实际获取的是盒模型

offsetHeight = height + border + padding

  • offsetHeight=height+(top)border+(bottom)border+(top)padding+(bottom)padding
-------------------------------------------------------------------------------------------

3、offsetLeft实际获取的是盒模型

offsetLeft = left + marginLeft

(offsetleft表示距离offsetparent的左边间距)

(offsetleft是根据父级的定位来确定距离的)

-------------------------------------------------------------------------------------------

4、offsetTop实际获取的是盒模型

offsetTop = top +marginTop

(offsetleft表示距离offsetparent的顶边间距)

(offsetleft是根据父级的定位来确定距离的)

-------------------------------------------------------------------------------------------
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 CSSOM全称CSS对象模型,涉及两部分内容,第一部分和操作样式表相关,第二部分和元素尺寸相关,本文介绍第二...
    江枫阅读 8,108评论 1 10
  • 很多初学者对于JavaScript中的offset、scroll、client一直弄不明白,虽然网上到处都可以看一...
    新晋小牛牛阅读 5,689评论 0 1
  • Window和document对象的区别 window对象window对象表示浏览器中打开的窗口window对象是...
    FConfidence阅读 6,720评论 0 5
  • web下的高度、位置 屏幕、浏览器、页面的高度宽度 NARUTOne 相信各位web开发狮们,在项目中为了搭建漂亮...
    迷缘火叶阅读 9,075评论 0 1
  • 本文是针对刚学编程的小白,都是一些基础知识,如果想了解更多深层一点的东西,欢迎移步本人博客!! 博客地址 点击跳转...
    西巴撸阅读 3,790评论 0 2