我正在尝试使用单个rotate3d函数同时旋转一个多维数据集的多个轴,但是却出现了怪异的旋转。如果我使用,transform: rotateX(-30deg) rotateY(45deg)我会看到一个不错的角度,但是如果我使用,我transform: rotate3d(-2, 3, 0, 15deg)的角度看起来会很奇怪。* { box-sizing: border-box; }.scene { width: 50px; height: 50px;}.cube { width: 50px; height: 50px; margin: 50px; position: relative; transform-style: preserve-3d; transform: rotateX(-30deg) rotateY(45deg); /* works as expected */ /* transform: rotate3d(-2, 3, 0, 15deg); */ /* looks very weird */ transition: transform 1s;}.cube__face { position: absolute; width: 50px; height: 50px; border: 1px solid black;}.cube__face--front { background: hsla( 0, 100%, 50%, 0.7); transform: rotateY( 0deg) translateZ(25px);}.cube__face--right { background: hsla( 60, 100%, 50%, 0.7); transform: rotateY( 90deg) translateZ(25px);}.cube__face--back { background: hsla(120, 100%, 50%, 0.7); transform: rotateY(180deg) translateZ(25px);}.cube__face--left { background: hsla(180, 100%, 50%, 0.7); transform: rotateY(-90deg) translateZ(25px);}.cube__face--top { background: hsla(240, 100%, 50%, 0.7); transform: rotateX( 90deg) translateZ(25px);}.cube__face--bottom { background: hsla(300, 100%, 50%, 0.7); transform: rotateX(-90deg) translateZ(25px);}<div class="cube"> <div class="cube__face cube__face--front"></div> <div class="cube__face cube__face--back"></div> <div class="cube__face cube__face--right"></div> <div class="cube__face cube__face--left"></div> <div class="cube__face cube__face--top"></div> <div class="cube__face cube__face--bottom"></div></div>我知道我可能需要应用一些数学运算才能使它起作用,但我对线性代数一无所知。有没有实现我想要的方案?
添加回答
举报
0/150
提交
取消