JSFiddle - React, Tailwind, and code Playground
HTML
<div class="cards"></div>
CSS
body{
position: relative;
}
.cards{
width:200px;
height:300px;
background-color:#eee;
transform-style:preserve-3d;
-webkit-transform-style:preserve-3d;
-moz-transform-style:preserve-3d;
-o-transform-style:preserve-3d;
transform:rotateY(0deg);
-webkit-transform:rotateX(0deg);
-moz-transform:rotateX(0deg);
-o-transform:rotateX(0deg);
-ms-transform:rotateX(0deg);
transition:transform 0.25s, left 0.25s;
-webkit-transition:-webkit-transform 0.25s , left 0.25s;
-moz-transition:-moz-transform 0.25s, left 0.25s;
-o-transition:-o-transform 0.25s , left 0.25s;
left:0px;
background-color:#eee;
position:absolute;
}
.flip{
transform-style:preserve-3d;
-webkit-transform-style:preserve-3d;
-moz-transform-style:preserve-3d;
-o-transform-style:preserve-3d;
transform:rotateX(180deg);
-webkit-transform:rotateX(180deg);
-moz-transform:rotateX(180deg);
-o-transform:rotateX(180deg);
-ms-transform:rotateX(180deg);
transition:transform 0.25s, left 0.25s;
-webkit-transition:-webkit-transform 0.25s , left 0.25s;
-moz-transition:-moz-transform 0.25s, left 0.25s linear;
-o-transition:-o-transform 0.25s , left 0.25s linear;
background-color:#999;
position:absolute;
left:50%;
}
JavaScript
$(".cards").click(function(){
$(this).toggleClass("flip");
});