js获取元素高度和宽度的方式 - cientHeight、offsetHeight、getComputedStyle、getBoundingClientRect

本文介绍JavaScript中通过clientHeight、offsetHeight、getComputedStyle及getBoundingClientRect等方法获取元素高度的方式,并对比了不同方法的区别。

javascript获取元素高度可以通过这几种方式获取:cientHeight、offsetHeight、getComputedStyle、getBoundingClientRect

clientHeight 获取的元素高度包括内边距。如果元素是 display: inline; 那么得到的结果是 0 。


offsetHeight 获取元素的高度,包括内边距和边框的宽度。如果元素是 display: inline; 那么得到的结果是 0 。


getComputedStyle Window.getComputedStyle()方法返回一个对象,是这个元素的css属性值。


例如:下面样式代码中,Window.getComputedStyle(document.getElementById(‘box’)).height 为 100px

#box {
	background-color: skyblue;
	height: 100px;
	width: 100px;
	padding: 10px;
	border: 10px solid #999;
}

如果元素是 display: inline; 那么得到的结果是 auto 。


getBoundingClientRect 该方法可用于获取元素相对于视口的 left 、top 、right 、bottom 以及元素宽高。
例如, document.getElementById(‘box’).getBoundingClientRect().height 得到的高度包括 内边距和边框宽度。


如果元素是 display: inline; 那么得到的高度是 0 。


获取元素宽度的方法和结果跟上述一样。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值