.container { position: relative; perspective: 1000px; } .item { position: absolute; width: 100px; height: 100px; background-color: #ccc; transform-style: preserve-3d; transition: transform 1s; } .item:hover { transform: translateZ(200px); } .item:nth-child(1) { transform: rotateY(0deg) translateZ(200px); } .item:nth-child(2) { transform: rotateY(45deg) translateZ(200px); } .item:nth-child(3) { transform: rotateY(90deg) translateZ(200px); }
首先,为了实现3D效果,大家需要在容器上设置透视视点,即perspective属性。这个属性的值越大,透视效果越明显。接着,大家在每个需要应用3D效果的元素上设置transform-style:preserve-3d,以及过渡效果transition:transform 1s。当鼠标悬停在元素上时,大家设置translateZ属性,表示元素沿着Z轴方向移动,实现向外的凸起效果。
在实际应用中,大家可以通过rotateY属性调整元素围绕Y轴旋转,并利用translateZ调整元素的位置。通过调整不同元素的旋转角度和位移,就可以实现围绕滚动的3D效果。值得注意的是,为了实现更好的效果,大家可以为每个元素设置不同的过渡时间,以增加动态效果。