演示代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" type="text/css" href="reset.css"/>
<script src="jquery1.12.4.mini.js"></script>
<style type="text/css">
#box{
width: 800px;height: 300px;margin: 100px auto;
background: #ccc;display: flex;justify-content: space-between;
}
.pk{
width: 200px;height: 300px;position: relative;
}
.pkbm,.pkzm{
width: 200px;height: 300px;position: absolute;top: 0;left: 0;
}
.pkbm{
background: url(pk.jpg) no-repeat 100% 100%/1100% 500%;
}
.pkzm{
background: url(pk.jpg) no-repeat 0 0/1100% 500%;
backface-visibility: hidden;
}
#btnbox{
width: 100px;height: 40px;line-height: 40px;margin: 0 auto;
}
#btn{
width: 100%;height: 100%;color: #fff;background-color: chartreuse;
}
.pkfz1{
animation: pkfz1 1s forwards;
}
.pkfz2{
animation: pkfz2 1s forwards;
}
@keyframes pkfz1{
0%{transform: rotateY(0deg);}
100%{transform: rotateY(180deg);}
}
@keyframes pkfz2{
0%{transform: rotateY(180deg);}
100%{transform: rotateY(0deg);}
}
</style>
</head>
<body>
<div id="box">
<div class="pk">
<div class="pkbm"></div>
<div class="pkzm"></div>
</div>
<div class="pk">
<div class="pkbm"></div>
<div class="pkzm"></div>
</div>
<div class="pk">
<div class="pkbm"></div>
<div class="pkzm"></div>
</div>
</div>
<div id="btnbox">
<button id="btn">点击翻转</button>
</div>
<script type="text/javascript">
$(function(){
var i = 1;
$("#btn").click(function(){
if (i == 1) {
$(".pkbm,.pkzm").addClass("pkfz1").removeClass("pkfz2");
i = 2;
} else{
$(".pkbm,.pkzm").addClass("pkfz2").removeClass("pkfz1");
i = 1;
}
});
});
</script>
</body>
</html>