当前位置: 首页 > Web前端 > HTML

(知识)width,naturalWidth,clientWidth,offsetWidth整理

时间:2023-04-02 15:15:12 HTML

今天在做图片裁剪功能的时候,参考了网友的资料,发现每个人获取图片宽度的方式都不一样,所以整理了一下details每个属性的详细区别(详情请参考MDN)。1.HTMLImageElement.width是一个unsignedlong类型,反映了widthHTML属性,表示以CSS像素为单位渲染的图像的宽度。2.HTMLImageElement.naturalWidth返回一个unsignedlong类型,表示以CSS像素为单位的图像的固有宽度,如果可用的话;否则,返回0。3.Element.clientWidth属性指示元素的内部宽度,以像素为单位。此属性包括填充,但不包括垂直滚动条(如果有)、边框和边距。属性值将四舍五入为整数。如果需要十进制值,请使用element.getBoundingClientRect()方法返回元素的大小及其相对于视口的位置。”)。4.HTMLElement.offsetWidth是只读属性,返回元素的布局宽度。典型的(译者注:各个浏览器的offsetWidth可能不同)offsetWidth衡量的是包含元素的边框(border),水平线上的padding,垂直滚动条(scrollbar)(如果存在),以及CSS设置的宽度值。