js 获取容器的宽高排除内外边距
时间: 2023-09-26 10:06:45 浏览: 69
javascript获取网页宽高方法汇总
要获取一个容器的宽高,但要排除内外边距,可以使用以下方法:
1. 使用 offsetWidth 和 offsetHeight 属性。
```js
const container = document.querySelector('.container');
const containerWidth = container.offsetWidth - parseInt(getComputedStyle(container).paddingLeft) - parseInt(getComputedStyle(container).paddingRight);
const containerHeight = container.offsetHeight - parseInt(getComputedStyle(container).paddingTop) - parseInt(getComputedStyle(container).paddingBottom);
```
2. 使用 getBoundingClientRect() 方法。
```js
const container = document.querySelector('.container');
const rect = container.getBoundingClientRect();
const containerWidth = rect.width - parseInt(getComputedStyle(container).paddingLeft) - parseInt(getComputedStyle(container).paddingRight);
const containerHeight = rect.height - parseInt(getComputedStyle(container).paddingTop) - parseInt(getComputedStyle(container).paddingBottom);
```
这两种方法都可以获取容器的净宽度和净高度,即已经排除了内外边距的宽度和高度。
阅读全文