DevPlatform
Home
Components
Search
Submit
Earn
Login
Sign Up Free
3D Premium Card - Preview | DevPlatform
DevPlatform
Categories
Accordion
Animation
Box Shadow
Button
Card
Footer
Form
Gallery
Hero Section
Inputs
Loader
Marquee
Modal
Modules
Navbar
Progress Bar
Radio Buttons
Search-Bar
Sections
Slider
Tab
Timeline
Toggle
3D Premium Card
jitesh208
Jan 21, 2026
3
0
Share
Live Preview
Refresh
Live Editor
HTML
CSS
JS
HTML
CSS
JavaScript
1
<div class="container"> <div class="card"> <div class="card-inner"> <div class="card-front"> <div class="shine"></div> <div class="holographic-layer"></div> <div class="content"> <div class="icon"> <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> <polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon> </svg> </div> <h2 class="title">Premium Card</h2> <p class="description">Hover to experience the magic of 3D transformation</p> <div class="stats"> <div class="stat"> <span class="stat-value">4.9</span> <span class="stat-label">Rating</span> </div> <div class="stat"> <span class="stat-value">2.5K</span> <span class="stat-label">Users</span> </div> <div class="stat"> <span class="stat-value">Pro</span> <span class="stat-label">Tier</span> </div> </div> </div> <div class="glow-effect"></div> </div> </div> </div> </div>
1
* { margin: 0; padding: 0; box-sizing: border-box; } body { min-height: 100vh; display: flex; justify-content: center; align-items: center; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; padding: 20px; } .container { perspective: 1000px; } .card { width: 300px; height: 350px; position: relative; transition: transform 0.6s ease; animation: float 6s ease-in-out infinite; } .card:hover { transform: scale(1.05); } .card-inner { width: 100%; height: 100%; position: relative; transform-style: preserve-3d; transition: transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275); } .card:hover .card-inner { transform: rotateY(10deg) rotateX(10deg); } .card-front { width: 100%; height: 100%; position: absolute; background: linear-gradient(135deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.05) 100%); backdrop-filter: blur(10px); border-radius: 20px; border: 1px solid rgba(255, 255, 255, 0.2); box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3), 0 0 30px rgba(255, 255, 255, 0.1) inset; overflow: hidden; transform-style: preserve-3d; } .shine { position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: linear-gradient(45deg, transparent 30%, rgba(255, 255, 255, 0.1) 50%, transparent 70%); transform: rotate(45deg); animation: shine 3s ease-in-out infinite; } .holographic-layer { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(45deg, #ff00ff 0%, #00ffff 25%, #ffff00 50%, #00ff00 75%, #ff00ff 100%); opacity: 0; mix-blend-mode: color-dodge; transition: opacity 0.5s ease; animation: holo-shift 8s linear infinite; background-size: 300% 300%; } .card:hover .holographic-layer { opacity: 0.3; } .content { position: relative; z-index: 2; padding: 30px; height: 100%; display: flex; flex-direction: column; justify-content: space-between; color: white; } .icon { width: 60px; height: 60px; margin: 0 auto 20px; animation: pulse 2s ease-in-out infinite; } .icon svg { width: 100%; height: 100%; filter: drop-shadow(0 0 10px rgba(255, 255, 255, 0.5)); } .title { font-size: 28px; font-weight: 700; text-align: center; margin-bottom: 10px; text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3); letter-spacing: 1px; } .description { font-size: 14px; text-align: center; opacity: 0.9; line-height: 1.6; margin-bottom: 20px; } .stats { display: flex; justify-content: space-around; gap: 10px; margin-top: auto; } .stat { flex: 1; text-align: center; padding: 15px 10px; background: rgba(255, 255, 255, 0.1); border-radius: 12px; backdrop-filter: blur(5px); border: 1px solid rgba(255, 255, 255, 0.2); transition: all 0.3s ease; } .stat:hover { background: rgba(255, 255, 255, 0.2); transform: translateY(-5px); } .stat-value { display: block; font-size: 20px; font-weight: 700; margin-bottom: 5px; } .stat-label { display: block; font-size: 11px; opacity: 0.8; text-transform: uppercase; letter-spacing: 1px; } .glow-effect { position: absolute; top: 50%; left: 50%; width: 80%; height: 80%; background: radial-gradient(circle, rgba(255,255,255,0.3) 0%, transparent 70%); transform: translate(-50%, -50%); opacity: 0; transition: opacity 0.5s ease; pointer-events: none; } .card:hover .glow-effect { opacity: 1; animation: glow-pulse 2s ease-in-out infinite; } @keyframes float { 0%, 100% { transform: translateY(0px); } 50% { transform: translateY(-20px); } } @keyframes shine { 0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); } 100% { transform: translateX(100%) translateY(100%) rotate(45deg); } } @keyframes holo-shift { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } @keyframes pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.1); } } @keyframes glow-pulse { 0%, 100% { opacity: 0.5; } 50% { opacity: 1; } } @media (max-width: 768px) { .card { width: 280px; } .title { font-size: 24px; } .description { font-size: 13px; } }
1
Comments
0
Want to comment?
Please
login
or
sign up
to post comments.
No comments yet
Be the first to comment on this component!
Comments 0
Want to comment?
Please login or sign up to post comments.
No comments yet
Be the first to comment on this component!