您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

具有自动高度的CSS3翻转卡

具有自动高度的CSS3翻转卡

这是 上的 解决方案。

JS:

$('.flip').click(function(){
    $(this).find('.card').addClass('flipped');
    return false;
}).mouseleave(function () {
    $('.flip > .card').removeClass('flipped');
});

var frontHeight = $('.front').outerHeight();
var backHeight = $('.back').outerHeight();

if (frontHeight > backHeight) {
    $('.flip, .back').height(frontHeight);
}
else if (frontHeight > backHeight) {
    $('.flip, .front').height(backHeight);
}
else {
    $('.flip').height(backHeight);
}

定义的高度不灵活,因此您看到的就是定义的高度。由于高度将不会保持恒定,因此前部或后部需要具有定义的高度,以匹配最高的元素。在示例中,.front较高,因此.back将其更新为相同的高度,从而使您能够在中心实现垂直翻转效果

在您的示例中,mouseleave事件可以在动画期间的元素时触发。我以为您不希望这种情况发生,因此我更新了逻辑以.flipped在离开卡时删除它,该逻辑将在整个动画过程中保持其高度。我还清理了CSS,以减少冗余。希望这可以帮助!

CSS 2022/1/1 18:14:01 有766人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶