.img-box{ -webkit-perspective: 1000px; perspective: 1000px; display: inline-block; } .img{ width:200px; height:200px; -webkit-transform-style: preserve-3d; transform-style: preserve-3d; -webkit-transition: all 1.5s ease; transition: all 1.5s ease; } .img img{ width:100%; height: 100%; } .img:hover{ -webkit-transform: rotateY(-180deg); transform: rotateY(-180deg); -webkit-transition: all 1.5s ease; transition: all 1.5s ease; }
以上代码中,首先使用类名“img-box”定义承载图片的容器,使用“-webkit-perspective”和“perspective”为容器设置视角,令其看起来更真实。然后,使用类名“img”和“-webkit-transform-style”、“transform-style”为图片设置3D旋转样式,令其可以呈现3D的效果。最后,使用“-webkit-transition”和“transition”为图片设置旋转过渡动画效果。当鼠标悬停在图片上时,使用“:hover”伪类触发其向反方向180度旋转的效果,这样可以让图片看起来更加真实。
这里需要特别注意的是,在使用3D旋转样式的时候,需要为其设置一个旋转的基准点。例如,要让图片向左旋转,则可以设置“rotateY(-180deg)”;要让图片向右旋转,则可以设置“rotateY(180deg)”。
总之,使用CSS3 3D旋转图片可以大大增加Web页面的动态性和互动性,为用户带来更好的浏览体验。相信通过以上代码的介绍,大家已经对这个实现方法有了一定的了解,可以在实际项目中进行应用。