Step into the enchanting world of web design as we guide you through the process of creating captivating magic card effects using Elementor in WordPress.
Discover how to add a touch of whimsy to your website with interactive card animations, hover effects, and seamless transitions. Elevate your design skills and engage your audience with this step-by-step tutorial.
✅Get code snippets:
HTML Code:
<div class="card">
<div class="content">
<div class="back">
<div class="back-content">
<svg stroke="#ffffff" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" height="50px" width="50px" fill="#ffffff">
<g stroke-width="0" id="SVGRepo_bgCarrier"></g>
<g stroke-linejoin="round" stroke-linecap="round" id="SVGRepo_tracerCarrier"></g>
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <path fill-rule="evenodd" clip-rule="evenodd" d="M11.7501 6.40636C10.2698 6.40636 10.1222 6.5625 9.3561 6.5625C8.71769 6.5625 6.80245 5 5.84485 5C4.88724 5 3.77004 5.5625 3.77004 7.1875V9.0625C3.77197 9.55469 3.95081 11.0634 4.65075 10.6602C3.82323 11.6382 3.73963 12.7786 3.751 13.8826C3.52812 13.947 3.30072 14.0196 3.08003 14.095C2.39614 14.3289 1.67085 14.6271 1.3432 14.8387C0.995241 15.0634 0.895339 15.5277 1.12006 15.8756C1.34478 16.2236 1.80903 16.3235 2.15698 16.0988C2.3132 15.9979 2.87823 15.7493 3.56532 15.5144C3.64124 15.4884 3.71731 15.4631 3.79298 15.4386C3.83925 15.8724 3.95408 16.2684 4.12478 16.6292L4.1012 16.6416C3.69148 16.8581 3.3113 17.1067 3.06889 17.2652C3.02694 17.2926 2.98912 17.3173 2.95599 17.3387C2.60803 17.5634 2.50813 18.0277 2.73285 18.3756C2.95757 18.7236 3.42182 18.8235 3.76978 18.5988C3.8109 18.5722 3.85472 18.5436 3.90097 18.5134C4.1463 18.3533 4.45999 18.1485 4.80199 17.9678C4.88218 17.9254 4.95935 17.887 5.03317 17.8524C6.76347 19.4748 9.86991 20 11.7501 20C13.6302 20 16.7367 19.4748 18.467 17.8524C18.5408 17.887 18.6179 17.9254 18.6981 17.9678C19.0401 18.1485 19.3538 18.3533 19.5991 18.5134C19.6454 18.5436 19.6892 18.5722 19.7303 18.5988C20.0783 18.8235 20.5425 18.7236 20.7673 18.3756C20.992 18.0277 20.8921 17.5634 20.5441 17.3387C20.511 17.3173 20.4732 17.2926 20.4312 17.2652C20.1888 17.1067 19.8086 16.8581 19.3989 16.6416L19.3754 16.6292C19.5461 16.2683 19.6609 15.8724 19.7072 15.4385C19.783 15.463 19.8592 15.4883 19.9352 15.5144C20.6223 15.7493 21.1874 15.9979 21.3436 16.0988C21.6915 16.3235 22.1558 16.2236 22.3805 15.8756C22.6052 15.5277 22.5053 15.0634 22.1574 14.8387C21.8297 14.6271 21.1044 14.3289 20.4205 14.095C20.1997 14.0195 19.9722 13.947 19.7492 13.8825C19.7605 12.7785 19.6769 11.6382 18.8494 10.6602C19.5494 11.0634 19.7282 9.55469 19.7302 9.0625V7.18761C19.7302 5.56261 18.6129 5.00011 17.6553 5.00011C16.6977 5.00011 14.7825 6.5625 14.1441 6.5625C13.378 6.5625 13.2305 6.40636 11.7501 6.40636ZM11.0745 15.6004C11.2771 15.5314 11.5162 15.5 11.7501 15.5C11.984 15.5 12.2231 15.5314 12.4257 15.6004C12.5251 15.6342 12.6467 15.6876 12.7537 15.7738C12.8612 15.8603 13.0001 16.0206 13.0001 16.25C13.0001 16.4794 12.8612 16.6397 12.7537 16.7262C12.6467 16.8124 12.5251 16.8658 12.4257 16.8996C12.2231 16.9686 11.984 17 11.7501 17C11.5162 17 11.2771 16.9686 11.0745 16.8996C10.9751 16.8658 10.8535 16.8124 10.7464 16.7262C10.6389 16.6397 10.5001 16.4794 10.5001 16.25C10.5001 16.0206 10.6389 15.8603 10.7464 15.7738C10.8535 15.6876 10.9751 15.6342 11.0745 15.6004ZM13.9201 12.5005C14.0566 12.2721 14.326 12 14.7301 12C15.1342 12 15.4036 12.2721 15.54 12.5005C15.6823 12.7387 15.7501 13.0274 15.7501 13.3125C15.7501 13.5976 15.6823 13.8863 15.54 14.1245C15.4036 14.3529 15.1342 14.625 14.7301 14.625C14.326 14.625 14.0566 14.3529 13.9201 14.1245C13.7778 13.8863 13.7101 13.5976 13.7101 13.3125C13.7101 13.0274 13.7778 12.7387 13.9201 12.5005ZM7.96016 12.5005C8.09658 12.2721 8.36599 12 8.7701 12C9.17421 12 9.44362 12.2721 9.58004 12.5005C9.72234 12.7387 9.79011 13.0274 9.79011 13.3125C9.79011 13.5976 9.72234 13.8863 9.58004 14.1245C9.44362 14.3529 9.17421 14.625 8.7701 14.625C8.36599 14.625 8.09658 14.3529 7.96016 14.1245C7.81786 13.8863 7.75009 13.5976 7.75009 13.3125C7.75009 13.0274 7.81786 12.7387 7.96016 12.5005Z" fill="#1C274C"></path> </g></svg>
<strong>BASIC</strong>
</div>
</div>
<div class="front">
<div class="img">
<div class="circle">
</div>
<div class="circle" id="right">
</div>
<div class="circle" id="bottom">
</div>
</div>
<div class="front-content">
<small class="badge">$20</small>
<svg viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg" fill="#000000"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <defs> <style>.cls-1{fill:none;stroke:#ffffff;stroke-linejoin:round;stroke-width:2px;}</style> </defs> <title></title> <g data-name="Layer 4" id="Layer_4"> <polygon class="cls-1" points="18 26 32 12 46 26 18 26"></polygon> <polyline class="cls-1" points="20 26 20 62 44 62 44 26"></polyline> <line class="cls-1" x1="20" x2="44" y1="44" y2="44"></line> <line class="cls-1" x1="20" x2="44" y1="38" y2="38"></line> <line class="cls-1" x1="24" x2="24" y1="38" y2="44"></line> <path class="cls-1" d="M28,44V34a4,4,0,0,1,4-4h0a4,4,0,0,1,4,4V44"></path> <line class="cls-1" x1="32" x2="32" y1="38" y2="44"></line> <line class="cls-1" x1="40" x2="40" y1="38" y2="44"></line> <path class="cls-1" d="M32,50h0a6,6,0,0,1,6,6v6a0,0,0,0,1,0,0H26a0,0,0,0,1,0,0V56A6,6,0,0,1,32,50Z"></path> <polyline class="cls-1" points="44 38 52 30 62 40 44 40"></polyline> <polyline class="cls-1" points="44 62 60 62 60 40"></polyline> <polyline class="cls-1" points="20 62 4 62 4 40"></polyline> <path class="cls-1" d="M48,62V57a4,4,0,0,1,4-4h0a4,4,0,0,1,4,4v5"></path> <rect class="cls-1" height="5" width="8" x="48" y="44"></rect> <line class="cls-1" x1="52" x2="52" y1="44" y2="49"></line> <polyline class="cls-1" points="20 38 12 30 2 40 20 40"></polyline> <path class="cls-1" d="M16,62V57a4,4,0,0,0-4-4h0a4,4,0,0,0-4,4v5"></path> <rect class="cls-1" height="5" transform="translate(24 93) rotate(-180)" width="8" x="8" y="44"></rect> <line class="cls-1" x1="12" x2="12" y1="44" y2="49"></line> <line class="cls-1" x1="32" x2="32" y1="12" y2="1"></line> <line class="cls-1" x1="27" x2="37" y1="5" y2="5"></line> <path class="cls-1" d="M29,11.11a5.1,5.1,0,0,0-1.57.62,5,5,0,0,0-9.34,1.4A4.93,4.93,0,0,0,17,13a5,5,0,0,0,0,10"></path> <path class="cls-1" d="M49,26a5,5,0,0,0,4.91-4.1A4.93,4.93,0,0,0,57,23a5,5,0,0,0,0-10,4.93,4.93,0,0,0-1.09.13,5,5,0,0,0-9.34-1.4A5,5,0,0,0,44,11a4.94,4.94,0,0,0-2.71.81A6,6,0,0,0,37,10a6,6,0,0,0-2,.34"></path> <path class="cls-1" d="M48,10a7,7,0,1,1,12,4.9"></path> </g> </g></svg>
<div class="description">
<div class="title">
<p class="title">
<strong> Basic Cleanup</strong>
</p>
</div>
<p class="card-footer">
2 day | 1 image | 2 Revisions | JPG & PNG
</p>
</div>
</div>
</div>
</div>
</div>
CSS Code:
.card {
overflow: visible;
width: 190px;
height: 254px;
}
.content {
width: 100%;
height: 100%;
transform-style: preserve-3d;
transition: transform 300ms;
box-shadow: 0px 0px 10px 1px #000000ee;
border-radius: 5px;
}
.front, .back {
background-color: #151515;
position: absolute;
width: 100%;
height: 100%;
backface-visibility: hidden;
-webkit-backface-visibility: hidden;
border-radius: 5px;
overflow: hidden;
}
.back {
width: 100%;
height: 100%;
justify-content: center;
display: flex;
align-items: center;
overflow: hidden;
}
.back::before {
position: absolute;
content: ' ';
display: block;
width: 160px;
height: 160%;
background: linear-gradient(90deg, transparent, #ff9966, #ff9966, #ff9966, #ff9966, transparent);
animation: rotation_481 5000ms infinite linear;
}
.back-content {
position: absolute;
width: 99%;
height: 99%;
background-color: #151515;
border-radius: 5px;
color: white;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
gap: 30px;
}
.card:hover .content {
transform: rotateY(180deg);
}
@keyframes rotation_481 {
0% {
transform: rotateZ(0deg);
}
0% {
transform: rotateZ(360deg);
}
}
.front {
transform: rotateY(180deg);
color: white;
}
.front .front-content {
position: absolute;
width: 100%;
height: 100%;
padding: 10px;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.front-content .badge {
background-color: #00000055;
padding: 2px 10px;
border-radius: 10px;
backdrop-filter: blur(2px);
width: fit-content;
}
.description {
box-shadow: 0px 0px 10px 5px #00000088;
width: 100%;
padding: 10px;
background-color: #00000099;
backdrop-filter: blur(5px);
border-radius: 5px;
}
.title {
font-size: 11px;
max-width: 100%;
display: flex;
justify-content: space-between;
}
.title p {
width: 50%;
}
.card-footer {
color: #ffffff88;
margin-top: 5px;
font-size: 8px;
}
.front .img {
position: absolute;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}
.circle {
width: 90px;
height: 90px;
border-radius: 50%;
background-color: #ffbb66;
position: relative;
filter: blur(15px);
animation: floating 2600ms infinite linear;
}
#bottom {
background-color: #ff8866;
left: 50px;
top: 0px;
width: 150px;
height: 150px;
animation-delay: -800ms;
}
#right {
background-color: #ff2233;
left: 160px;
top: -80px;
width: 30px;
height: 30px;
animation-delay: -1800ms;
}
@keyframes floating {
0% {
transform: translateY(0px);
}
50% {
transform: translateY(10px);
}
100% {
transform: translateY(0px);
}
}