美文网首页我们就爱程序媛
clientLeft/Top/Width/Height之间的联系

clientLeft/Top/Width/Height之间的联系

作者: icessun | 来源:发表于2017-08-18 17:21 被阅读10次

element.offsetLeftelement.style.left的区别

  • element.offsetLeft
    • 只读值
    • 返回当前元素左上角相对于offsetParent节点内偏移的像素值

计算公式:
position的left值+margin,第一个定位的父元素的左边缘

  • element.style.left

    • 用户可以自己定义,是css样式
    • 返回的是字符串,包含单位
    • 可读可写
  • clientLeft

左边border的宽度+左边滚动的宽度(如果存在,针对块级元素)

<div id="test">
  a<br>a<br>a<br>a<br>a<br>a<br>a<br>a
</div>

#test {
  overflow: auto;
  position: absolute;
  
  left:         80px; /* + */
  margin-left:  10px; /* = 90px offsetLeft */
  
  height:  100px;
  width:   100px;
  
  border: 8px solid red;
  background: #f8f8f8;
}

var el = document.getElementById("test");
console.log( el.offsetLeft );  // (left + margin)           80 + 10 = 90
console.log( el.clientLeft );  // (border + left scrollbar)  8 +  0 = 8

上诉代码说明:元素的offsetLeft的值,是等于元素的定位left的值加上存在的margin

offsetLeft与clientLeft | 网络

clientLeft/Top

clientLeft and clientTop only show the width of the border. No margin. No padding. No left/top position. Just border-width.

offsetLeft/Top

offsetLeft and offsetTop are the left/top specified values + the margin. No border. No padding.

offsettWidth/Hright

元素自身的宽度和高度,不包括因 overflow 而未显示的部分,也就是其实际占据的宽度,整型,单位像素

clientHeight/Width

内容可视区域的高度,也就是说页面浏览器中可以看到内容的这个区域的高度,一般是最后一个工具条以下到状态栏以上的这个区域,与页面内容无关。

scrollHeight

相关文章

  • clientLeft/Top/Width/Height之间的联系

    element.offsetLeft与element.style.left的区别 element.offsetLe...

  • 快速制作一个三角形

    .box{ width: 0; height: 0; border-top: ...

  • 2020-05-12

    class Rectangle { num left, top, width, height; Rectang...

  • 四、百分比

    top height 参考于包含块的height left margin padding width 参考于包含块...

  • 垂直居中

    .arpb {width: 100%;height: 100%;position: fixed;top: 0;le...

  • 布局满屏

    .app{position: absolute;top: 0;left: 0;width: 100%;height...

  • HTML关键词

    border:边框 margin:外边距 width:宽 height:高 padding:内边距 top、bot...

  • 盒子模型2

    display 我们不能为行内元素设置width、height、margin-top和margin-bottom。...

  • 盒子模型2

    display 我们不能为行内元素设置width、height、margin-top和margin-bottom。...

  • css系列2 堆叠上下文

    堆叠顺序 内联元素比如span,width,height,padding-top,padding-bottom,m...

网友评论

    本文标题:clientLeft/Top/Width/Height之间的联系

    本文链接:https://www.haomeiwen.com/subject/hdgorxtx.html