.card-container { perspective: 1000px; width: 200px; height: 200px; } .card { transition: transform 1s; transform-style: preserve-3d; position: relative; width: 100%; height: 100%; } .card:hover { transform: rotateY(180deg); } .card-side { position: absolute; width: 100%; height: 100%; backface-visibility: hidden; } .card-front { background-color: #111; } .card-back { background-color: #eee; transform: rotateY(180deg); }
首先,大家需要创建一个带有透视属性的容器。这个属性必须被添加到容器元素上,因为它会影响其子元素。接下来,大家需要创建一个带有3D变形属性的卡片元素。它必须有相对定位属性,以便其子元素可以相对于它进行定位。同时,卡片可以设置width和height,也可以设置transform-style属性,使其子元素继承其变形属性。
接下来,大家需要在卡片上设置过渡效果,并在悬停时更改其旋转角度。大家可以使用transform: rotateY(deg)属性来指定卡片的旋转角度。
最后,大家需要创建卡片的正面和背面。它们可以使用绝对定位,同时设置backface-visibility属性来避免翻转时出现的问题。在背面元素上,大家需要添加旋转Y轴的变形属性,以便在悬停时看到卡的另一面。在前面的元素上,可以添加一些样式,从而使其看起来像是真正的卡。
通过这些代码,大家可以实现一个非常酷的福卡翻转效果。