Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width">
- <title>Card flip</title>
- <style>
- *{
- margin:0;
- padding:0;
- }
- .card {
- margin: 100px auto 0;
- width: 400px;
- height: 600px;
- perspective: 1200px;
- }
- .card_inner{
- width:100%;
- height:100%;
- transition: transform 1s;
- transform-style: preserve-3d;
- position:relative;
- }
- .card_inner.is-flipped{
- transform: rotateY(180deg);
- }
- .card_face{
- position:absolute;
- width:100%;
- height:100%;
- -webkit-backface-visibility: hidden;
- backface-visibility: hidden;
- overflow: hidden;
- border-radius: 16px;
- box-shadow: 0 3px 18px 3px rgba(0,0,0,.2);
- }
- .card_face--front{
- background-color:orange;
- display:flex;
- align-items: center;
- justify-content: center;
- }
- .card_face--back{
- background-color:yellow;
- display:flex;
- align-items: center;
- justify-content: center;
- transform: rotateY(180deg);
- }
- button{
- padding:.4em;
- cursor:pointer;
- }
- </style>
- </head>
- <body>
- <div class="card">
- <div class="card_inner">
- <div class="card_face card_face--front">
- <h2>FRONT</h2>
- <button class="button">BACK</button>
- </div>
- <div class="card_face card_face--back">
- <h2>BACK</h2>
- <button class="button">FRONT</button>
- </div>
- </div>
- </div>
- <script>
- const card = document.querySelector('.card_inner');
- const buttons = document.getElementsByClassName('button');
- Array.from(buttons).forEach(function(button) {
- button.addEventListener('click', function () {
- card.classList.toggle('is-flipped');
- })
- });
- </script>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement