CSS扑克牌翻转是一种常见的特效,可以在网页设计中增添趣味性与实用性。若想实现扑克牌翻转效果,需借助CSS3的transform属性,以及JS的事件监听。
〈div 〉〈div 〉〈img src="/post/front.png"〉〈/div〉〈div 〉〈img src="/post/back.png"〉〈/div〉〈/div〉
首先,以一个div元素为卡牌容器,内部嵌套两个div元素,front和back,分别表示正面与背面。使用CSS3的transform属性对back元素进行旋转180度的变换,使其隐藏在front后面。
.card {position: relative;width: 250px;height: 350px;perspective: 1000px;}.front, .back {position: absolute;width: 100%;height: 100%;backface-visibility: hidden;}.back {transform: rotateY(180deg);}为了实现翻转效果,需要监听元素的鼠标事件,通过JS控制卡牌的翻转状态。
let card = document.querySelector('.card');card.addEventListener('click', function() {if (this.classList.contains('is-flipped')) {this.classList.remove('is-flipped');} else {this.classList.add('is-flipped');}});通过JS的classList属性,为卡牌容器动态添加样式类is-flipped,触发卡牌翻转效果。
.is-flipped .front {transform: rotateY(180deg);}.is-flipped .back {transform: rotateY(0deg);}最终,通过CSS3与JS的协作,实现了卡牌翻转特效的效果。其可以用于网站中的游戏类、娱乐类页面设计,增加用户体验与趣味性。









