Real Estate Slider Section
Preview
Edit
Download
Run
Download Options
HTML File
Download as .html file
CSS File
Download as .css file
JavaScript File
Download as .js file
Combined HTML
All code in one HTML file
Project ZIP
All files in a ZIP archive
Cancel
HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Premium Real Estate Slider</title> <!-- Premium Google Fonts: Cinzel (Luxury) & Montserrat (Clean) --> <link href="https://fonts.googleapis.com/css2?family=Cinzel:wght@500;700&family=Montserrat:wght@300;400;600&display=swap" rel="stylesheet"> <!-- Swiper CSS --> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/swiper@10/swiper-bundle.min.css" /> <!-- FontAwesome for Icons --> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> </head> <body> <!-- Slider Main Container --> <div class="swiper re-slider-container"> <div class="swiper-wrapper"> <!-- SLIDE 1: Modern Villa --> <div class="swiper-slide"> <div class="bg-image" style="background-image: url('https://images.unsplash.com/photo-1600596542815-ffad4c1539a9?q=80&w=2075&auto=format&fit=crop');"></div> <div class="overlay"></div> <!-- Premium Details Card --> <div class="property-card"> <span class="badge">Featured</span> <h2 class="prop-title">The Beverly Estate</h2> <p class="prop-location"><i class="fas fa-map-marker-alt"></i> 90210 Beverly Hills, California</p> <div class="prop-price">$12,500,000</div> <div class="amenities"> <div class="amenity-item"> <i class="fas fa-bed"></i> <span class="amenity-value">6</span> <span class="amenity-label">Beds</span> </div> <div class="amenity-item"> <i class="fas fa-bath"></i> <span class="amenity-value">8</span> <span class="amenity-label">Baths</span> </div> <div class="amenity-item"> <i class="fas fa-vector-square"></i> <span class="amenity-value">8,500</span> <span class="amenity-label">Sq Ft</span> </div> </div> <a href="#" class="btn-view">Schedule a Tour</a> </div> </div> <!-- SLIDE 2: Luxury Penthouse --> <div class="swiper-slide"> <div class="bg-image" style="background-image: url('https://images.unsplash.com/photo-1512917774080-9991f1c4c750?q=80&w=2070&auto=format&fit=crop');"></div> <div class="overlay"></div> <div class="property-card"> <span class="badge">For Sale</span> <h2 class="prop-title">Skyline Penthouse</h2> <p class="prop-location"><i class="fas fa-map-marker-alt"></i> Manhattan, New York</p> <div class="prop-price">$8,950,000</div> <div class="amenities"> <div class="amenity-item"> <i class="fas fa-bed"></i> <span class="amenity-value">4</span> <span class="amenity-label">Beds</span> </div> <div class="amenity-item"> <i class="fas fa-bath"></i> <span class="amenity-value">5</span> <span class="amenity-label">Baths</span> </div> <div class="amenity-item"> <i class="fas fa-vector-square"></i> <span class="amenity-value">4,200</span> <span class="amenity-label">Sq Ft</span> </div> </div> <a href="#" class="btn-view">View Details</a> </div> </div> <!-- SLIDE 3: Oceanfront Mansion --> <div class="swiper-slide"> <div class="bg-image" style="background-image: url('https://plus.unsplash.com/premium_photo-1661915661139-5b6a4e4a6fcc?w=500&auto=format&fit=crop&q=60&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxzZWFyY2h8MXx8dmlsbGF8ZW58MHx8MHx8fDA%3D');"></div> <div class="overlay"></div> <div class="property-card"> <span class="badge">Exclusive</span> <h2 class="prop-title">Oceanfront Villa</h2> <p class="prop-location"><i class="fas fa-map-marker-alt"></i> Palm Beach, Florida</p> <div class="prop-price">$18,200,000</div> <div class="amenities"> <div class="amenity-item"> <i class="fas fa-bed"></i> <span class="amenity-value">8</span> <span class="amenity-label">Beds</span> </div> <div class="amenity-item"> <i class="fas fa-bath"></i> <span class="amenity-value">10</span> <span class="amenity-label">Baths</span> </div> <div class="amenity-item"> <i class="fas fa-vector-square"></i> <span class="amenity-value">12,000</span> <span class="amenity-label">Sq Ft</span> </div> </div> <a href="#" class="btn-view">Take Virtual Tour</a> </div> </div> </div> <!-- Custom Navigation & Fraction Pagination --> <div class="slider-controls"> <div class="nav-btn prev-btn"><i class="fas fa-chevron-left"></i></div> <div class="swiper-pagination"></div> <!-- Displays 1 / 3 --> <div class="nav-btn next-btn"><i class="fas fa-chevron-right"></i></div> </div> <!-- Autoplay Progress Bar --> <div class="autoplay-progress"> <div class="progress-fill"></div> </div> </div> <!-- Swiper JS --> <script src="https://cdn.jsdelivr.net/npm/swiper@10/swiper-bundle.min.js"></script> </body> </html>
CSS
/* === RESET === */ * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Montserrat', sans-serif; background-color: #111; overflow-x: hidden; } /* === SLIDER CONTAINER === */ .re-slider-container { width: 100vw; height: 100vh; position: relative; } .swiper-slide { position: relative; display: flex; align-items: center; justify-content: flex-end; /* Align Content to Right side for desktop */ padding: 5% 10%; overflow: hidden; } /* === BACKGROUND & KEN BURNS === */ .bg-image { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; background-position: center; z-index: 1; transform: scale(1.05); /* Start slightly zoomed */ transition: transform 10s ease-out; } /* Subtle Zoom OUT effect for Real Estate (gives a wider view feel) */ .swiper-slide-active .bg-image { transform: scale(1); transition: transform 14s ease-out; } /* Dark Gradient for readability */ .overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(90deg, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.8) 100%); z-index: 2; } /* === GLASSMORPHISM PROPERTY CARD === */ .property-card { position: relative; z-index: 3; width: 450px; background: rgba(15, 20, 30, 0.65); /* Dark Glass */ backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid rgba(255, 255, 255, 0.15); border-top: 1px solid rgba(255, 255, 255, 0.3); border-left: 1px solid rgba(255, 255, 255, 0.3); border-radius: 20px; padding: 40px; color: #fff; box-shadow: 0 25px 45px rgba(0,0,0,0.5); /* Initial Animation State */ opacity: 0; transform: translateX(50px); transition: all 1s cubic-bezier(0.23, 1, 0.32, 1); } .swiper-slide-active .property-card { opacity: 1; transform: translateX(0); transition-delay: 0.4s; } /* === CARD CONTENTS === */ .badge { display: inline-block; background: #d4af37; /* Metallic Gold */ color: #000; font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 2px; padding: 6px 15px; border-radius: 30px; margin-bottom: 20px; } .prop-title { font-family: 'Cinzel', serif; font-size: 2.5rem; line-height: 1.2; margin-bottom: 10px; color: #ffffff; } .prop-location { font-size: 0.9rem; color: #ccc; margin-bottom: 25px; display: flex; align-items: center; gap: 8px; } .prop-location i { color: #d4af37; } .prop-price { font-size: 2.2rem; font-weight: 600; color: #d4af37; /* Gold Price */ margin-bottom: 30px; font-family: 'Montserrat', sans-serif; border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 20px; } /* AMENITIES GRID */ .amenities { display: flex; justify-content: space-between; margin-bottom: 35px; } .amenity-item { text-align: center; } .amenity-item i { display: block; font-size: 1.2rem; margin-bottom: 8px; color: #fff; opacity: 0.8; } .amenity-value { font-size: 1.1rem; font-weight: 600; display: block; } .amenity-label { font-size: 0.75rem; color: #aaa; text-transform: uppercase; letter-spacing: 1px; } /* CTA BUTTON */ .btn-view { display: block; width: 100%; padding: 18px 0; text-align: center; background: #fff; color: #000; text-decoration: none; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; border-radius: 4px; transition: all 0.3s ease; } .btn-view:hover { background: #d4af37; color: #fff; transform: translateY(-2px); box-shadow: 0 10px 20px rgba(212, 175, 55, 0.3); } /* === INTERNAL STAGGERED ANIMATIONS === */ .badge, .prop-title, .prop-location, .prop-price, .amenities, .btn-view { opacity: 0; transform: translateY(20px); transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); } .swiper-slide-active .badge { opacity: 1; transform: translateY(0); transition-delay: 0.6s; } .swiper-slide-active .prop-title { opacity: 1; transform: translateY(0); transition-delay: 0.7s; } .swiper-slide-active .prop-location { opacity: 1; transform: translateY(0); transition-delay: 0.8s; } .swiper-slide-active .prop-price { opacity: 1; transform: translateY(0); transition-delay: 0.9s; } .swiper-slide-active .amenities { opacity: 1; transform: translateY(0); transition-delay: 1.0s; } .swiper-slide-active .btn-view { opacity: 1; transform: translateY(0); transition-delay: 1.1s; } /* === NAVIGATION & PROGRESS BAR === */ .slider-controls { position: absolute; bottom: 40px; left: 10%; z-index: 10; display: flex; align-items: center; gap: 20px; } .nav-btn { width: 50px; height: 50px; border: 1px solid rgba(255,255,255,0.3); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #fff; cursor: pointer; transition: all 0.3s ease; background: rgba(0,0,0,0.2); backdrop-filter: blur(5px); } .nav-btn:hover { background: #d4af37; border-color: #d4af37; } .swiper-pagination-fraction { color: #fff !important; font-family: 'Cinzel', serif; font-size: 1.2rem; letter-spacing: 2px; position: static !important; width: auto !important; } /* Autoplay Progress Line */ .autoplay-progress { position: absolute; bottom: 0; left: 0; width: 100%; height: 4px; background: rgba(255,255,255,0.1); z-index: 10; } .progress-fill { height: 100%; width: 0%; background: #d4af37; transition: width 0.1s linear; } /* === RESPONSIVE === */ @media (max-width: 768px) { .swiper-slide { justify-content: center; align-items: flex-end; padding: 5%; padding-bottom: 20%; } .property-card { width: 100%; padding: 25px; transform: translateY(50px); } .swiper-slide-active .property-card { transform: translateY(0); } .overlay { background: linear-gradient(0deg, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.1) 100%); } .prop-title { font-size: 2rem; } .prop-price { font-size: 1.8rem; } .slider-controls { display: none; } /* Use swipe on mobile */ }
JavaScript
const progressFill = document.querySelector('.progress-fill'); const slideDuration = 6000; // 6 seconds per slide const swiper = new Swiper('.re-slider-container', { // Real Estate looks best with 'fade' or 'creative' effect effect: 'fade', fadeEffect: { crossFade: true }, loop: true, speed: 1200, // Smooth slow crossfade autoplay: { delay: slideDuration, disableOnInteraction: false, }, // Fraction Pagination (e.g., "1 / 3") pagination: { el: '.swiper-pagination', type: 'fraction', renderFraction: function (currentClass, totalClass) { return '<span class="' + currentClass + '"></span>' + ' <span style="color:#666; margin: 0 5px;">/</span> ' + '<span class="' + totalClass + '"></span>'; } }, navigation: { nextEl: '.next-btn', prevEl: '.prev-btn', }, // Progress Bar Logic on: { autoplayTimeLeft(s, time, progress) { // Update width of the yellow progress bar progressFill.style.width = (1 - progress) * 100 + '%'; }, slideChangeTransitionStart: function() { // Reset progress bar on manual slide progressFill.style.transition = 'none'; progressFill.style.width = '0%'; }, slideChangeTransitionEnd: function() { progressFill.style.transition = 'width 0.1s linear'; } } });
Output Preview
Desktop
Mobile
Fullscreen