В настоящее время Element.getBoundingClientRect()
указывает положение и размеры элемента, но автоматически учитывает преобразования через свойство CSS transform
. Как я могу получить прямоугольник без преобразования?
В приведенном ниже примере я бы хотел, чтобы вывод был 10 10 100 100
.
const rect = div.getBoundingClientRect()
document.write(`${rect.left} ${rect.top} ${rect.width} ${rect.height}`)
body {
margin: 10px;
}
div {
background: red;
width: 100px;
height: 100px;
transform: translate(1px, 1px) scale(0.5)
}
<div id="div"></div>