CSS3 で構築された非常に複雑なサイトがあり、HTML 要素が 3d 変換、回転、反転、フロップされ、一般的に歪んでいます。
これらの要素の 1 つの画面上の位置を把握しようとしていますが、その方法がわかりません。何か独創的なアイデアを持っている人はいないかと思っていました。
または、誰かが の背後-webkit-perspective
にある数学を説明できる場合は、モデル化する方法がわからない唯一のものであるため、位置を把握できます。
CSS3 で構築された非常に複雑なサイトがあり、HTML 要素が 3d 変換、回転、反転、フロップされ、一般的に歪んでいます。
これらの要素の 1 つの画面上の位置を把握しようとしていますが、その方法がわかりません。何か独創的なアイデアを持っている人はいないかと思っていました。
または、誰かが の背後-webkit-perspective
にある数学を説明できる場合は、モデル化する方法がわからない唯一のものであるため、位置を把握できます。
使ってみましたgetBoundingClientRect()
か?
transform
これまで、プロパティで変換された要素の寸法を計算するためにこれをうまく使用しました。
問題は、CSS3 変換が要素の位置を実際に変更しないことです。もちろん、ブラウザは再配置されたことを「認識」していますが、これはブラウザがレンダリングするためです。ただし、この情報は DOM/API に返されません。
私が考えることができる唯一のことは、これらは「単純な」行列変換であるため、変換に基づいて自分で位置を計算することです。
残念ながら、代数クラスはかなり前のことなので、もう方法を説明することはできません。それが可能であるということだけです。
getBoundingClientRectを使用するのは良い考えですが、左上、右下、左下、右上の 4 つのコーナーの正確な座標ではなく、形状を含む四角形の座標のみが得られます。
これらの変換されていない座標のそれぞれを取得し、javascript を介して変換を適用することによってのみ、これを行うことができます。