Beautiful Image Gallery

Explore our stunning collection of curated images with smooth transitions

Mountain Landscape

Majestic Mountains

Experience the breathtaking beauty of mountain ranges

Forest Path

Enchanted Forest

Discover the magic of ancient woodlands and hidden trails

Lake View

Serene Lakes

Find peace and tranquility by crystal clear waters

Ocean Sunset

Ocean Sunset

Witness the stunning beauty of sunsets over the horizon

Image Slider Code

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Image Slider</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        }

        .slider-section {
            padding: 80px 0;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        }

        .slider-container {
            max-width: 1000px;
            margin: 0 auto;
            position: relative;
            overflow: hidden;
            border-radius: 15px;
            box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
        }

        .slider {
            display: flex;
            transition: transform 0.5s ease-in-out;
        }

        .slide {
            min-width: 100%;
            position: relative;
        }

        .slide img {
            width: 100%;
            height: 500px;
            object-fit: cover;
            display: block;
        }

        .slide-content {
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
            color: white;
            padding: 30px;
            text-align: center;
        }

        .slide-content h3 {
            font-size: 1.8rem;
            margin-bottom: 10px;
        }

        .slide-content p {
            font-size: 1.1rem;
            opacity: 0.9;
        }

        .slider-nav {
            position: absolute;
            top: 50%;
            width: 100%;
            display: flex;
            justify-content: space-between;
            transform: translateY(-50%);
            padding: 0 20px;
        }

        .slider-nav button {
            background: rgba(255, 255, 255, 0.8);
            border: none;
            width: 50px;
            height: 50px;
            border-radius: 50%;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.5rem;
            color: #333;
            transition: all 0.3s ease;
        }

        .slider-nav button:hover {
            background: white;
            transform: scale(1.1);
        }

        .slider-dots {
            display: flex;
            justify-content: center;
            margin-top: 20px;
            gap: 10px;
        }

        .slider-dots .dot {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background: rgba(255, 255, 255, 0.5);
            cursor: pointer;
            transition: all 0.3s ease;
        }

        .slider-dots .dot.active {
            background: white;
            transform: scale(1.2);
        }

        @media (max-width: 768px) {
            .slide img {
                height: 400px;
            }
            
            .slide-content h3 {
                font-size: 1.5rem;
            }
            
            .slider-nav button {
                width: 40px;
                height: 40px;
            }
        }

        @media (max-width: 480px) {
            .slide img {
                height: 300px;
            }
            
            .slide-content {
                padding: 20px;
            }
        }
    </style>
</head>
<body>
    <section class="slider-section">
        <div class="slider-container">
            <div class="slider" id="slider">
                <div class="slide">
                    <img src="image1.jpg" alt="Mountain Landscape">
                    <div class="slide-content">
                        <h3>Majestic Mountains</h3>
                        <p>Experience the breathtaking beauty of mountain ranges</p>
                    </div>
                </div>
                <div class="slide">
                    <img src="image2.jpg" alt="Forest Path">
                    <div class="slide-content">
                        <h3>Enchanted Forest</h3>
                        <p>Discover the magic of ancient woodlands and hidden trails</p>
                    </div>
                </div>
                <div class="slide">
                    <img src="image3.jpg" alt="Lake View">
                    <div class="slide-content">
                        <h3>Serene Lakes</h3>
                        <p>Find peace and tranquility by crystal clear waters</p>
                    </div>
                </div>
            </div>
            
            <div class="slider-nav">
                <button id="prevBtn">&#10094;</button>
                <button id="nextBtn">&#10095;</button>
            </div>
            
            <div class="slider-dots" id="sliderDots"></div>
        </div>
    </section>

    <script>
        document.addEventListener('DOMContentLoaded', function() {
            const slider = document.getElementById('slider');
            const slides = document.querySelectorAll('.slide');
            const prevBtn = document.getElementById('prevBtn');
            const nextBtn = document.getElementById('nextBtn');
            const dotsContainer = document.getElementById('sliderDots');
            
            let currentSlide = 0;
            const totalSlides = slides.length;
            
            // Create dots
            slides.forEach((_, index) => {
                const dot = document.createElement('div');
                dot.classList.add('dot');
                if (index === 0) dot.classList.add('active');
                dot.addEventListener('click', () => goToSlide(index));
                dotsContainer.appendChild(dot);
            });
            
            // Update slider position
            function updateSlider() {
                slider.style.transform = `translateX(-${currentSlide * 100}%)`;
                
                // Update dots
                document.querySelectorAll('.dot').forEach((dot, index) => {
                    dot.classList.toggle('active', index === currentSlide);
                });
            }
            
            // Go to specific slide
            function goToSlide(slideIndex) {
                currentSlide = slideIndex;
                if (currentSlide >= totalSlides) currentSlide = 0;
                if (currentSlide < 0) currentSlide = totalSlides - 1;
                updateSlider();
            }
            
            // Next slide
            function nextSlide() {
                goToSlide(currentSlide + 1);
            }
            
            // Previous slide
            function prevSlide() {
                goToSlide(currentSlide - 1);
            }
            
            // Event listeners
            prevBtn.addEventListener('click', prevSlide);
            nextBtn.addEventListener('click', nextSlide);
            
            // Auto slide (optional)
            // setInterval(nextSlide, 5000);
        });
    </script>
</body>
</html>