現在、Element.getBoundingClientRect()
要素の位置とサイズを指定しますが、CSStransform
プロパティを介して変換を自動的に考慮します。変換せずに長方形を取得するにはどうすればよいですか?
以下の例では、出力を にしたいと思います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>