【发布时间】:2014-06-16 13:24:13
【问题描述】:
我正在创建一个应用程序,允许开发人员通过数据属性在 2D 和 3D 空间中旋转元素。下面将 step 2 在 X 轴上旋转 90 度:
<div id="container">
<div id="canvas">
<div class="step">
Step 1
</div>
<div class="step" data-rotate-x="90">
Step 2
</div>
</div>
</div>
一次显示一个步骤。应用程序将旋转画布以显示每个步骤。为此,我对每个步骤进行旋转并反转它们,因此当导航到第 2 步时,画布将显示以下内容:
<div id="canvas" style="transform: rotateX(-90deg);">
我遇到的问题是当一个步骤应用多个旋转时计算必要的旋转。
演示 1:http://jsbin.com/zafek/1/edit - 显示应用程序在 X 轴上旋转应用于第 2 步。
演示 2:http://jsbin.com/rices/2/edit - 在第 2 步中同时应用 X 和 Y,但正如您所见,它错误地旋转了画布。
有人可以帮忙解决所涉及的数学问题吗?
【问题讨论】:
标签: css 3d rotation transform css-transforms