Skip to content

Abdullah-Bahar/Infinite-Marquee-Carousel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Infinite Marquee Carousel

📖 İçindekiler

💡 Proje Hakkında

Infinite Marquee Efect (Kayan Efekt), güzel bir görünüm elde etmek için Web sitelerinde çoğunlukla kullanılan bir efekttir.

Bu efekti yapabilmek adına HTML etiketi olan <marquee> kullanılmaktaydı. Ancak HTML 4.0 ile birlikte kullanımdan kaldırıldı. Tarayıcıların bazı sürümleri hala render ediyor olsa da resmi olarak kullanımı tavsiye edilmez ve burada da buna yer verilmemiştir.

<marquee> elementinin kullanımdan kaldırılmasıyla birlikte bu efekti yapmak için HTML & CSS veya farklı kütüphaneler kullanılmaya başlandı.

Buradaki amacımız bu efekti yapabilmek adına farklı çözümler sunmaktır. Gerek saf HTML ve CSS olsun gerek farklı kütüphanelerin kullanımı olsun bu projede pek çok örnek yapılarak bir carousel koleksiyonu oluşturulmuştur.

🎠 Carousel Örnekleri

Proje açıklamaları hem aşağıda verilmiş, kod açıklamaları ise yorum satırlarıyle her demo içerisinde yapılmıştır.

Kodlarda değişiklikler yaparak dilediğiniz gibi özelleştirebilirsiniz.

Projede toplam 5 demo vardır.

1. Demo - HTML & CSS

  • HTML ve CSS kullanılmıştır
  • CSS @keyframes kullanılarak marquee efekti uygulanmıştır.
  • Aniamsyonun pürüzsüzlüğü için içeriğin aynısı kopyala yapıştır şeklinde eklenmiştir. Kopyala yapıştır yapmak istemeyenler için de JS ile bunu yapabilceği kod verilmiştir.
  • Container bazlı kaydırma uygulanmıştır.
  • Hover ile durdurma ve tekrar başlatma mümkündür.
  • Slide'in başlangıç ve bitiş noktalarına da kaybolma efektleri uygulanmıştır.
  • Responsive tasarım göz önünde bulundurlmuştur.
  • Canlı Önizleme

Proje Demo GIF'i

2. Demo - HTML & CSS

  • HTML ve CSS kullanılmıştır.
  • CSS @keyframes kullanılarak marquee efekti uygulanmıştır.
  • Animasyon pürüzsüzlüğü için kopyala yapıştıra gerek kalmadan her şey hesaplanmıştır
  • Slide'in başlangıç ve bitiş noktalarına da kaybolma efektleri uygulanmıştır.
  • İtem bazlı kaydırma uygulanmıştır.
  • Slide'in başlangıç ve bitiş noktalarına da kaybolma efektleri uygulanmıştır.
  • Negatif değerli animate uygulanarak sayfa açıldığında içeriğin dolu olması sağlanmıştır.
  • Responsive tasarım göz önünde bulundurlmuştur.
  • Canlı Önizleme

Proje Demo GIF'i

3. Demo - HTML & CSS & Flexbox

  • HTML, CSS ve Flexbox kullanılmıştır.
  • CSS @keyframes kullanılarak marquee efekti uygulanmıştır.
  • ul öğesi altındaki li elemanalrı için efekt uygulanmıştır.
  • Animasyon pürüzsüzlüğü için kopyala yapıştır yapılan yere aria-hidden="true" eklenerek Screen Reader'lar için erişilebilirlik gözetilmiştir.
  • Responsive tasarım göz önünde bulunduurlmuştur.
  • Canlı Önizleme

Proje Demo GIF'i

4. Demo - Owl Carousel 2

  • HTML, CSS ve Owl Carousel kütüphanesi kullanılmıştır.
  • Owl Carousel Sürüm : v2.3.4
  • JQuery Sürüm : v3.7.1 (Owl Carousel Bağımlılığı)
  • Responsive tasarım göz önünde bulunduurlmuştur.
  • Bu demo karşılaşılan problemlere yaklaşımı göstermek adına 3 adet demo içermektedir.
  • Daha fazla bilgi için Owl Carousel'ın sitesini ziyaret edebeilirsiniz.

1. Owl Carousel - Basic Infinite

  • Owl Carousel başlatıcı için responsive ayarları yapıldı.
  • Owl Carousel'in kendi CSS ayarlarına müdahele edilerek marquee efekti uygulandı.
.owl-stage {
	transition-timing-function: linear !important;
}
  • Problemler :
    • Carousel başlarken autoplayTimeout2 verilen değer kadar bekliyor sonra dönmeye başlıyor. Yani dönemsi için gecikme yaşanıyor.
    • Carousel için eklenen elemanların boyutu aynı olmadığı için elemanlar arası boşluk eşit gözükmüyor.
  • Canlı Önizleme

Proje Demo GIF'i

2. Owl Carousel - AutoWidth Problem

  • Owl Carousel başlatıcısı için autoWidth değeri uygulanarak farklı genişliğe sahip elemanlar olsa da aralarındaki boşluk eşit dağılmıştır.
  • autoWidth değeri kullanıldığı için responsive değerleri otomatik olarak ayarlandı. responsive ayarı eklenmesine gerek kalmadı.
  • Problemler :
    • Carousel başlarken autoplayTimeout'e verilen değer kadar bekliyor sonra dönmeye başlıyor. Yani dönemsi için gecikme yaşanıyor.
    • Elemanların genişlikleri farklı olduğu için slider akışında hızlanma ve yavaşlama gerçekleşiyor. Baş döndürücü bir durum.
      • Örnek :
        • Eleman başına dönme hızı : 5000
        • 2000 genişliğe sahip eleman için 5000 değerinde bir dönmeyi yavaş tamamlar.
        • 5000 genişliğe sahip eleman için 5000 değerinde bir dönmeyi hızlı tamamlar.
  • Canlı Önizleme

Proje Demo GIF'i

3. Owl Carousel - AutoWidth Fix

  • Yukarıdaki yaşanan problemlere çözüm adına Owl Carousel kütüphanesini JS ile müdahle edilmiştir.
  • Elemanlar için dönme hızı için verilen autoplayTimeout static değeri kaldırıldı. Onun yerine px/sn şeklinde hesaplama yapan dinamik hız ayarlaması eklenerek yukarıda yaşanan hızlanıp yavaşlama sorunu giderilmiştir.
  • Dönme hızı manuel olarak ayarlandığı için Carousel başlarken her hangi bir gecikme artık yaşanmamaktadır.
  • Canlı Önizleme

Proje Demo GIF'i

5. Demo - Swiper JS

  • HTML, CSS ve Swiper JS kütüphanesi kullanılmıştır.
  • Swiper JS Sürüm : v12.0.1
  • Owl Carousel'de yaşanan sorunları gidermek adına kütüphane kodlarına yapılan müdahele gibi her hangi bir müdahele yapmadan Swiper başlatıcısının bize tanımış olduğu özellikler kullanılarak marquee efekti kolayca yapılmıştır.
  • Çift yönlü efekt uygulanmıştır.
  • Slider elemanları için overlay uygulanarak modern tasarım amaçlanmıştır.
  • Elemanlarda kullanılan görseller Random User Generator'dan alınmıştır
  • Daha fazla bilgi için Swiper JS'in sitesini ziyaret edebeilirsiniz.
  • Canlı Önizleme

Proje Demo GIF'i

🤝 Katılım ve Katkıda Bulunma

Proje kapsamında yapılan yazım hataları, kodla ilgili sorun ve hataları, yeni demo fikirleri, efekt önerileri veya farklı kütüphane çözümleri varsa öneri de bulunmaktan çekinmeyin.

Tüm bunlar bir fork uzağınızda :)

About

HTML & CSS, Owl Carousel ve Swiper kullanılarak geliştirilmiş infinite marquee carousel demoları.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors