CSS中的背景变换不仅包括位移和缩放,还可以通过z轴变换实现3D效果。在用z轴变换时,我们需要设置一个透视距离,指定视觉点距离平面的距离,实现更真实的3D效果。
background: url("bg.jpg") center center/cover no-repeat; transform: perspective(800px) rotateX(30deg);
在上面的代码中,我们设置了一个800像素的透视距离,然后使用rotateX()函数将背景图按X轴旋转30度。注意,这里的rotate函数是基于z轴的,而非X轴。
background: url("bg.jpg") center center/cover no-repeat; transform: perspective(800px) rotateY(-30deg);
如果我们想按照Y轴旋转背景图,可以使用rotateY()函数。这里我们将背景图按Y轴逆时针旋转30度。同样地,该函数基于z轴。
background: url("bg.jpg") center center/cover no-repeat; transform: perspective(800px) rotate3d(1, 1, 0, 45deg);
我们还可以使用rotate3d()函数,以任意轴旋转背景图。该函数的前三个参数指定旋转轴向量的坐标,最后一个参数指定旋转角度。在上面的代码中,我们将背景图绕(1, 1, 0)轴旋转45度。