CSS Kaydırma Çubuğu Oluşturucu
Özel kaydırma çubukları eskiden üretici önekli sözde öğelerden oluşan bir kâbustu. Bugün scrollbar-color ve scrollbar-width, tüm modern tarayıcılardaki yaygın durumları karşılar: dar veya normal genişlik ve iki renkli tema (sürgü ve iz). Piksel düzeyinde denetim için (izin iç boşluğu, sürgünün yarıçapı, imleç üzerine gelme durumları) eski ::-webkit-scrollbar sözde öğeleri Chrome ve Safari’de hâlâ çalışır. Bu oluşturucu her iki sürümü de üretir ve doğru biçimde art arda uygular.
Bir kaydırma çubuğuna nasıl stil verilir
-
1
Genişliği seçin
Auto (platformun varsayılan genişliği), ince (daha dar) veya webkit kuralları aracılığıyla belirli bir piksel değeri.
-
2
Sürgü ve iz renklerini ayarlayın
Modern `scrollbar-color` iki renk alır. Webkit kuralları ayrı renk, yarıçap ve imleç üzerine gelme durumları sunar.
-
3
İmleç üzerine gelme efekti ekleyin (isteğe bağlı)
Sürgü, imleç üzerine gelince aydınlanır. `::-webkit-scrollbar-thumb:hover` ile çalışır.
-
4
Kapsamı belirleyin
`html` / `body` öğesine (tüm sayfa) veya yalnızca belirli bir kaydırılabilir kapsayıcıya uygulayın.
-
5
CSS'i kopyalayın
Birleştirilmiş modern ve webkit kuralları: her modern tarayıcıda düzgün bir yedekle çalışır.
Modern standart özellikler (2023 ve sonrası)
/* Applies to the element that scrolls */
html {
scrollbar-width: thin; /* auto | thin | none */
scrollbar-color: #4f46e5 #e5e7eb; /* thumb track */
}
Tarayıcı desteği (2024):
scrollbar-width: Chrome 121+, Safari 18.2+, Firefox 64+.scrollbar-color: Chrome 121+, Safari 18.2+, Firefox 64+.scrollbar-gutter: stable: Chrome 94+, Safari 14+, Firefox 97+. Gerek olmadığında bile kaydırma çubuğu boşluğunu ayırarak yerleşim kaymasını önler.
Webkit sözde öğeleri (Chrome, Safari, eski Edge)
::-webkit-scrollbar {
width: 10px;
height: 10px;
}
::-webkit-scrollbar-track {
background: #e5e7eb;
border-radius: 10px;
}
::-webkit-scrollbar-thumb {
background: #4f46e5;
border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
background: #3730a3;
}
Daha ayrıntılı denetim. width, dikey kaydırma çubuğunun genişliğini; height ise yatay kaydırma çubuğunun yüksekliğini ayarlar. Her iki yönde de kaydırılabilen kapsayıcılar için ikisini de ekleyin.
İki yaklaşımı art arda uygulayın
Önce modern kuralları, ardından her ikisini de işleyen tarayıcılar için bir geliştirme olarak webkit kurallarını belirtin:
.scroll-area {
scrollbar-width: thin;
scrollbar-color: #4f46e5 #e5e7eb;
}
.scroll-area::-webkit-scrollbar { width: 8px; }
.scroll-area::-webkit-scrollbar-track { background: #e5e7eb; }
.scroll-area::-webkit-scrollbar-thumb {
background: #4f46e5;
border-radius: 4px;
border: 2px solid #e5e7eb;
}
Firefox yalnızca modern scrollbar-* kurallarını dikkate alır. Chrome ve Safari, webkit kurallarını dikkate alır (bunlar modern kuralları geçersiz kılar, böylece davranış tutarlı kalır).
scrollbar-gutter içeriğin kaymasını önler
Ayrılmış bir boşluk olmadan, kaydırma çubuğu göründüğünde içerik yeniden akar (dinamik listelerde sık görülür). Çözüm:
html { scrollbar-gutter: stable; }
/* or */
html { scrollbar-gutter: stable both-edges; }
İçerik kaysa da kaymasa da kaydırma çubuğu yuvası ayrılır. both-edges, içeriği görsel olarak ortalamak için karşı tarafa eşleşen bir boşluk ekler.
Kaydırma çubuklarını tamamen gizleme
.no-scrollbar {
scrollbar-width: none; /* Firefox */
}
.no-scrollbar::-webkit-scrollbar { display: none; } /* Chrome, Safari */
Dikkatli olun: kaydırma çubuğunu gizlemek, kullanıcıların içeriğin kaydırılabildiğini görmesini engeller. Yalnızca net bir gösterge ile (oklar, sayfa noktaları) veya kaydırma davranışı bağlamdan açıkça anlaşıldığında (yatay taşıyıcılar, sohbet geçmişleri) kullanın.
Mobil için dikkat edilecekler
iOS ve Android’de kaydırma çubukları yalnızca kaydırma sırasında bir an görünür. Özel kaydırma çubuğu CSS’iniz yine de uygulanır, ancak kullanıcılar onu bir saniyeden fazla göremeyebilir. Buna göre tasarlayın: nadiren görünen görsel süslemelere fazla yatırım yapmayın.
Erişilebilirlik
- Kontrast: sürgünün ize göre kontrastı, metin dışı kontrast için 3:1 oranını karşılamalıdır (WCAG 1.4.11).
- Genişlik: ince kaydırma çubuklarını fareyle kavramak zor olabilir; özellikle motor bozukluğu olan kullanıcılar için. Normal genişlik daha güvenli bir varsayılandır.
- Kaydırılabilir bölgelerde kaydırma çubuğunu asla kaldırmayın ve başka bir kaydırma yolu sunmayın. Kaydırma çubuğuna bağımlı kullanıcılar aksi hâlde takılıp kalır.
Sık Sorulan Sorular
Evet, modern scrollbar-width ve scrollbar-color özellikleriyle. Firefox, webkit sözde öğelerini desteklemez; bu nedenle tarayıcılar arasında tutarlı bir görünüm için önce modern özellikleri kullanın ve webkit kurallarını bir geliştirme olarak ekleyin.
Çünkü varsayılan kaydırma çubukları içeriğin üzerine biner ve gerekene kadar yer ayırmaz. Kaydırma çubuğu göründüğünde veya kaybolduğunda yeniden akışı önlemek için boşluğu her zaman ayırmak üzere kaydırılabilir öğeye scrollbar-gutter: stable uygulayın.
Genellikle evet, çünkü kaydırma çubuğu yersiz görünür ve içerikle çekişir. Kullanıcıların içeriğin kaydığını yine de anlaması için görünür sayfalama noktaları veya ok denetimleri ekleyin. Kaydırma yaslama (scroll-snapping) kullanıyorsanız prefers-reduced-motion tercihine uyun.
Etkileyebilir. Çok ince veya düşük kontrastlı kaydırma çubukları, motor bozukluğu olan ve az gören kullanıcılar için kullanması zordur. Rahat kavranması için kaydırma çubuğunu en az 8–10 px genişliğinde tutun ve sürgü ile iz arasında 3:1 kontrast koruyun.
İlgili Araçlar
ASCII Tablosu Referansı
NUL, LF ve DEL dahil her kod için ondalık, onaltılık, sekizlik ve ikili değerlerle HTML sayısal karakter başvurusu gösterimini sunan tam ASCII tablosu.
HTML Karakter Referansı
HTML varlıklarının aranabilir listesi; adlandırılmış ve sayısal kodlarıyla birlikte özel karakter ve semboller için tek tıkla kopyalama.
FPS Sayacı
requestAnimationFrame ile tarayıcı FPS değerini ölçün: yumuşatma, en düşük ve en yüksek kare hızı, uyarı eşiği ve isteğe bağlı grafik. Yerel çalışır, yükleme ve API yoktur.
Klavye kısayolları başvurusu
macOS, Windows ve Linux’ta VS Code, Chrome ve GNU Readline kullanan Bash için belgelenmiş varsayılan kısayolları arayın.
EditorConfig Oluşturucu
Girinti stili ve boyutu, satır sonu, karakter kümesi ve boşluk kurallarınızla bir .editorconfig dosyası oluşturarak IDE ve editörler arasında tutarlı biçimlendirme sağlayın.
E-posta Doğrulayıcı
Bir e-posta adresini doğrulayın: RFC 5322 sözdizimi kontrolü, canlı MX kaydı sorgulama, ayrıca yerel kısım, alan adı ve uzunluk bilgileri. Hiçbir e-posta gönderilmez.
Araç diğer dillerde mevcuttur
- Generator Bilah Gulir CSS [ID]
- CSSスクロールバージェネレーター [JA]
- เครื่องสร้างแถบเลื่อน CSS [TH]
- Generator paska przewijania CSS [PL]
- Gerador de barra de rolagem CSS [PT]
- CSS 스크롤바 생성기 [KO]
- CSS-generator för rullningslist [SV]
- CSS-Scrollbar-Generator [DE]
- Trình tạo thanh cuộn CSS [VI]
- مولّد شريط التمرير CSS [AR]
- Generador de barra de desplazamiento CSS [ES]
- Générateur de barre de défilement CSS [FR]
- CSS-schuifbalkgenerator [NL]
- CSS Scrollbar Generator [EN]
- Generatore di barre di scorrimento CSS [IT]
- Генератор CSS-скроллбара [RU]
- CSS滚动条生成器 [ZH]