• 18-11-2024, 02:21:20
    #1
    Merhabalar HTML & CSS & JS ile sıfırdan haber teması geliştirmekteyim, bu haber temasıyla ilgili slider ekledim, gece gece contalar yandı çözemedim sorunu.

    Sorun şu: HTML kısmında 3 fotoğraf mevcut fakat 2'ye geçince fotoğraf gözükmüyor ilgili kodları aşağıya bırakıyorum

    HTML tarafında 1-2-3 herhangi birine tıkladığım zaman fotoğrafın görünmesini istiyorum YARDIMCI OLACAK ARKADAŞLAR KONUYA DAVET EDİYORUM

    <section class="modern-slider">
        <div class="slider-container">
            <div class="slider-item">
                <img src="https://uykubozuklugu.com/images/2024/11/1731552306-11-aylik-bebeklerde-uyku-bozuklugu.jpeg" alt="Haber Resmi">
                <div class="slider-overlay">
                    <h3 class="slider-title">Uyku Bozukluğu ve Bebeklerde 11 Aylık Zorluklar</h3>
                    <p class="slider-description">Bebeklerde uyku bozukluğu, ebeveynler için büyük bir zorluktur. Uzmanlardan tavsiyelerle nasıl başa çıkılır.</p>
                    <a href="#" class="slider-btn">Devamını Oku</a>
                </div>
            </div>
            <!-- Diğer slider-item'lar -->
              <div class="slider-item">
                <img src="https://uykubozuklugu.com/images/2024/11/1731552306-11-aylik-bebeklerde-uyku-bozuklugu.jpeg" alt="Haber Resmi">
                <div class="slider-overlay">
                    <h3 class="slider-title">Uyku Bozukluğu ve Bebeklerde 11 Aylık Zorluklar</h3>
                    <p class="slider-description">Bebeklerde uyku bozukluğu, ebeveynler için büyük bir zorluktur. Uzmanlardan tavsiyelerle nasıl başa çıkılır.</p>
                    <a href="#" class="slider-btn">Devamını Oku</a>
                </div>
            </div>
              <div class="slider-item">
                <img src="https://uykubozuklugu.com/images/2024/11/1731552306-11-aylik-bebeklerde-uyku-bozuklugu.jpeg" alt="Haber Resmi">
                <div class="slider-overlay">
                    <h3 class="slider-title">Uyku Bozukluğu ve Bebeklerde 11 Aylık Zorluklar</h3>
                    <p class="slider-description">Bebeklerde uyku bozukluğu, ebeveynler için büyük bir zorluktur. Uzmanlardan tavsiyelerle nasıl başa çıkılır.</p>
                    <a href="#" class="slider-btn">Devamını Oku</a>
                </div>
            </div>
              <div class="slider-item">
                <img src="https://uykubozuklugu.com/images/2024/11/1731552306-11-aylik-bebeklerde-uyku-bozuklugu.jpeg" alt="Haber Resmi">
                <div class="slider-overlay">
                    <h3 class="slider-title">Uyku Bozukluğu ve Bebeklerde 11 Aylık Zorluklar</h3>
                    <p class="slider-description">Bebeklerde uyku bozukluğu, ebeveynler için büyük bir zorluktur. Uzmanlardan tavsiyelerle nasıl başa çıkılır.</p>
                    <a href="#" class="slider-btn">Devamını Oku</a>
                </div>
            </div>
        </div>
    </section>
    
    
        <!-- Yatay Kolon Alt Kısımda -->
        <div class="slider-navigation">
            <ul class="navigation-column">
                <!-- Mobilde sadece 1-9'a kadar olacak -->
                <li class="nav-item" data-index="0">1</li>
                <li class="nav-item" data-index="1">2</li>
                <li class="nav-item" data-index="2">3</li>
                <li class="nav-item" data-index="3">4</li>
                <li class="nav-item" data-index="4">5</li>
                <li class="nav-item" data-index="5">6</li>
                <li class="nav-item" data-index="6">7</li>
                <li class="nav-item" data-index="7">8</li>
                <li class="nav-item" data-index="8">9</li>
                <li class="nav-item" data-index="9">10</li>
                <li class="nav-item" data-index="10">11</li>
                <li class="nav-item" data-index="11">12</li>
                <li class="nav-item" data-index="12">13</li>
                <li class="nav-item" data-index="13">14</li>
                <li class="nav-item" data-index="14">15</li>
            </ul>
        </div>
    </section>
    .modern-slider {
        position: relative;
        width: 100%;
        background-color: #f4f4f4;
        margin: 0;
    }
    
    .slider-container {
        display: flex;
        gap: 20px;
        overflow: hidden;
        width: 100%;
        transition: transform 0.3s ease;
    }
    
    .slider-item {
        flex-shrink: 0;
        width: 100%;
        height: 400px;
        position: relative;
        background-color: #f9f9f9;
        overflow: hidden;
        border-radius: 0; /* Köşe ovalini kaldırdık */
    }
    
    .slider-item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        filter: brightness(50%);
    }
    
    .slider-overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        color: white;
        text-align: center;
        padding: 20px;
        background: rgba(0, 0, 0, 0.5);
    }
    
    .slider-title {
        font-size: 28px;
        font-weight: 600;
        color: #fff;
        margin-bottom: 10px;
    }
    
    .slider-description {
        font-size: 18px;
        color: #f1f1f1;
        margin-bottom: 20px;
    }
    
    .slider-btn {
        background-color: #ff5c57;
        color: white;
        padding: 10px 20px;
        font-size: 16px;
        border-radius: 30px;
        border: none;
        text-decoration: none;
        transition: background-color 0.3s ease;
    }
    
    .slider-btn:hover {
        background-color: #b82a47;
    }
    
    /* Yatay Kolon */
    .slider-navigation {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        background-color: rgba(255, 255, 255, 0.9);
        padding: 10px 0;
        position: relative;
    }
    
    .navigation-column {
        display: flex;
        gap: 15px;
        justify-content: center;
        align-items: center;
        list-style: none;
        padding: 0;
        margin: 0;
        overflow-x: auto;
        flex-wrap: nowrap; /* Sabit sıralama */
    }
    
    .nav-item {
        font-size: 18px;
        font-weight: bold;
        color: #ff5c57;
        cursor: pointer;
        padding: 5px 10px;
        border-radius: 5px;
        transition: background-color 0.3s ease, color 0.3s ease;
    }
    
    .nav-item:hover {
        background-color: #ff5c57;
        color: white;
    }
    
    /* Düz Kenar */
    .slider-item {
        border-radius: 0 !important; /* Köşe ovalini kaldırdık */
    }
    
    /* Responsive Design */
    @media (max-width: 768px) {
        .slider-container {
            flex-direction: row;
        }
    
        .slider-item {
            height: 250px;
        }
    
        .slider-btn {
            font-size: 14px;
            padding: 8px 15px;
        }
    
        .slider-title {
            font-size: 22px;
        }
    
        .slider-description {
            font-size: 14px;
        }
    
        .navigation-column {
            width: 100%;
            flex-direction: row;
            overflow-x: auto;
        }
    
        /* Mobilde sadece 1-9 kolonları görünsün */
        .navigation-column li:nth-child(n+10) {
            display: none;
        }
    }
    .slider-item img {
        width: 100%;
        height: 100%; /* Resmin tam olarak kapsayıcıya yayılmasını sağlar */
        object-fit: cover; /* Resmin, kapsayıcıyı dolduracak şekilde kesilmesini sağlar */
        filter: brightness(50%);
    }
    .slider-container {
        position: relative;
        z-index: 10; /* Slider'ı ön planda tutmak için */
    }
    
    @media (max-width: 480px) {
        .slider-title {
            font-size: 20px;
        }
    
        .slider-description {
            font-size: 12px;
        }
    
        .slider-btn {
            font-size: 12px;
            padding: 6px 12px;
        }
    
        .slider-item {
            height: 200px;
        }
    }
    const navigationItems = document.querySelectorAll('.nav-item');
    const container = document.querySelector('.slider-container');
    let currentIndex = 0;
    
    function updateSlider(index) {
        currentIndex = index;
        container.style.transform = `translateX(-${100 * currentIndex}%)`;
    }
    
    navigationItems.forEach((item, index) => {
        item.addEventListener('click', () => {
            updateSlider(index);  // Slider'ı güncelle
        });
    });
    
    // Otomatik Slider Geçişi (isteğe bağlı)
    setInterval(() => {
        currentIndex = (currentIndex + 1) % navigationItems.length; // Sonraki slide'a geç
        updateSlider(currentIndex);  // Slider'ı güncelle
    }, 5000); // 5 saniyede bir geçiş
  • 18-11-2024, 08:47:37
    #2
    hocam js tarafında display i de güncellersen sorun çözülecek gibi duruyor.
  • 18-11-2024, 10:02:43
    #3
    onuralcay adlı üyeden alıntı: mesajı görüntüle
    hocam js tarafında display i de güncellersen sorun çözülecek gibi duruyor.
    hocam az evvel onu da denedim olmuyor
  • 18-11-2024, 23:20:05
    #4
    sorun çözüldü; sorunun nedeni şuydu haber temamın css ve js leriyle çakıştığından ötürü slider'in css ve js yapısını tamamen temadan bağımsız hale getirdim daha güzel tasarıma geçirdim

    konu kilit