Rotating Card

CSS, Animation · Mar 30, 2021

Creates a two sided card which rotates on hover.

  • Set the backface-visibility of the cards to none.
  • Initially, set rotateY() for the back side of the card to -180deg and the front side to 0deg.
  • Upon hover, set rotateY() for the front side to 180deg and backside to 0deg.
  • Set the appropriate perspective value to create the rotate effect.
Front Side
Back Side
<div class="card">
  <div class="card-side front">
    <div>Front Side</div>
  <div class="card-side back">
    <div>Back Side</div>
.card {
  perspective: 150rem;
  position: relative;
  height: 40rem;
  max-width: 400px;
  margin: 2rem;
  box-shadow: none;
  background: none;

.card-side {
  height: 35rem;
  border-radius: 15px;
  transition: all 0.8s ease;
  backface-visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 80%;
  padding: 2rem;
  color: white;

.card-side.back {
  transform: rotateY(-180deg);
  background-color: #4158D0;
  background-image: linear-gradient(43deg, #4158D0 0%,#C850C0 46%, #FFCC70 100%);

.card-side.front {
  background-color: #0093E9;
  background-image: linear-gradient(160deg, #0093E9 0%, #80D0C7 100%);

.card:hover .card-side.front {
  transform: rotateY(180deg);

.card:hover .card-side.back {
  transform: rotateY(0deg);

More like this

  • CSS Hover Effects

    A collection of cool CSS hover effects to spice up your next web project.

    Collection · 10 snippets

  • Shifting Card

    Creates a card that shifts on hover.

    CSS, Animation · Dec 14, 2022

  • Image rotate on hover

    Creates a rotate effect for the image on hover.

    CSS, Animation · Oct 11, 2021

  • Squiggle link hover effect

    Creates a squiggle effect when hovering over a link.

    CSS, Animation · Jan 10, 2023