.flip { width: 200px; height: 200px; perspective: 1000px; } .flip:hover .card { transform: rotateY(180deg); } .card { width: 100%; height: 100%; transform-style: preserve-3d; transition: transform 0.6s ease; } .front, .back { position: absolute; width: 100%; height: 100%; backface-visibility: hidden; } .front { background-color: #f00; } .back { background-color: #00f; transform: rotateY(180deg); }
在这个示例中,大家定义了一个包含两个子元素的父元素.flip。当鼠标悬停在这个元素上时,子元素.card会进行翻转,显示出它的另一面,这里是一个红色的.front和一个蓝色的.back。
要实现这个效果,大家使用了perspective属性来指定3D空间中的观察点,并将transform-style属性设置为preserve-3d,以保留子元素的3D转换。大家还使用了transition属性来创建平滑的转换动画。
除此之外,大家还使用了backface-visibility属性来控制元素的反面是否可见。这个属性对于翻转效果非常重要,因为元素在旋转时可能会显示出其背面,而大家通常不希望背面可见。
总的来说,CSS3翻转360度是一种很酷的效果,可以用于各种网页设计和交互效果中。如果你想学习更多关于CSS3转换和过渡的知识,可以查看相关教程。