1
現在、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>
トランスフォームプロパティを削除して測定してから再度プロパティを追加してみませんか? –
私はそれをやっていると考えましたが、私の腸は私にもっと簡単な方法があると言います。このための組み込みがなければ、私はかなり驚くだろう。 – darrylyeo
http://stackoverflow.com/questions/27745438/how-to-compute-getboundingclientrect-without-considering-transforms –