CSS Yükleyici Oluşturucu
Spinner, kullanıcıya bir şeylerin olduğunu gösterir. Bu oluşturucu tek bir dairesel CSS spinner üretir: çapı, kenarlık kalınlığını, vurgu rengini ve dönüş hızını ayarlayın, canlı önizlemeyi izleyin ve CSS kodunu kopyalayın. Her şey saf CSS; SVG yok, JavaScript yok ve harici kütüphane yok.
Oluşturucu nasıl kullanılır
-
1
Boyutu ayarlayın
Spinnerın piksel cinsinden çapı. 40-80 px, çoğu düğmeye ve içerik alanına uyar.
-
2
Kenarlık kalınlığını ayarlayın
Halka, bir daire üzerine çizilen kenarlıktır. Daha kalın kenarlık daha belirgin bir yay oluşturur; 60 px için 4-8 px iyi görünür.
-
3
Rengi seçin
Dönen yayın vurgu rengi. Halkanın geri kalanı açık gri kalır, böylece yay öne çıkar.
-
4
Hızı ayarlayın ve CSS kodunu kopyalayın
Bir tam turun saniye cinsinden süresi. Genellikle 1 saniye en uygunudur; 500 ms altı telaşlı, 2 saniye üstü ağır hissettirir.
Üretilen CSS nasıl çalışır
.loader {
width: 60px;
height: 60px;
border: 6px solid #eee;
border-top-color: #10b981;
border-radius: 50%;
animation: spin 1s linear infinite;
}
@keyframes spin {
to { transform: rotate(360deg); }
}
Spinner, kalın bir kenarlıkla çizilen bir dairedir. border-top-color kuralı halkanın yalnızca üst kısmını vurgu rengiyle boyar, böylece halka bir yay gibi görünür; @keyframes spin kuralı da onu merkezi etrafında döndürür. transform: rotate() ile döndürmek animasyonu hafif tutar, çünkü tarayıcı öğeyi kare kare yeniden çizmek yerine kompozitörde hareket ettirir.
Sayfada göstermek için bir öğe ekleyin ve CSS dosyasını yükleyin:
<div class="loader" role="status" aria-label="Yükleniyor"></div>
Erişilebilir hale getirin
role="status"ekleyin, böylece ekran okuyucular spinneri seslendirir.aria-labeldeğerine durum metnini yazın, örneğin “Yükleniyor”.- İçeriği birkaç saniyeden uzun süre spinnerin arkasında gizlemeyin, zaman aşımı için bir yedek olmadan.
prefers-reduced-motiontercihine saygı gösterin. Animasyonları kapatmış kullanıcılar için dönme animasyonunu basit bir solma efektiyle ya da statik bir “Yükleniyor…” metniyle değiştirin:
@media (prefers-reduced-motion: reduce) {
.loader { animation: none; background: currentColor; opacity: .4; }
}
Ne zaman spinner, ne zaman iyimser arayüz
- 100 ms altında yanıt: spinnera gerek yok; insan gözü gecikmeyi neredeyse fark etmez.
- 100 ms – 1 s: ince bir spinner (küçük halka, “Yükleniyor…” düğme metni) çift tıklamaları önler.
- 1 s – 10 s: belirgin bir spinner, ölçülebiliyorsa ideal olarak ilerlemeyle birlikte.
- > 10 s: bu bir spinner sorunu değildir; neyin yavaş olduğunu bulup düzeltin.
Form gönderimleri ve düğme tıklamaları için düğmenin içindeki bir spinner, genellikle tüm sayfayı kaplayan bir katmandan daha iyidir.
Sık Sorulan Sorular
Basit, tek öğeli spinnerlar için CSS (dört kenarlığı döndürme numarası). Sivrilen bir ize, birden çok stroke-dasharray animasyonuna ya da fırça darbesi gibi görünen dolgulu parçalara ihtiyaç duyduğunuzda SVG. CSS daha küçük ve basittir; SVG daha esnektir.
Muhtemelen büyük bir öğeyi döndürdüğünüz ya da kompozit edilmeyen bir özelliği animasyonladığınız için. Spinnerı küçük tutun, top/margin yerine transform: rotate() kullanın ve diğer ağır animasyonlar çalışırken onu tetiklemekten kaçının.
Neredeyse her zaman saat yönünde. Saat yönünün tersine dönenler hafiften yanlış hissettirir; çünkü gerçek dünyadaki dönüş ipuçlarının çoğu (saatler, yel değirmenleri) saat yönünde döner. Belirli bir nedeniniz yoksa bu geleneğe uyun.
JavaScript’te yükleyici sınıfını ekleyen bir setTimeout(..., 300) ve işlem daha önce biterse çalışan bir clearTimeout ile. Bu, gerçek gecikmeleri gizlemeden hızlı yanıtlarda titremeyi önler.
İlgili Araçlar
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.
Webpack Yapılandırma Oluşturucu
Kısa bir formdan webpack 5 için bir webpack.config.js oluşturun: entry, çıkış klasörü ve modu ayarlayın; ardından TypeScript, Babel, bir CSS yükleyici, HtmlWebpackPlugin ve bir dev sunucu açın.
Dosya Boyutu Dönüştürücü
Bayt, KB, MB, GB, TB ve ikili IEC birimleri (KiB, MiB, GiB, TiB) arasında, ondalık ve ikiliyi dilediğiniz gibi birleştirerek dönüşüm yapın.
Kurgusal telefon numarası oluşturucu
Beş ülkede resmen ayrılmış aralıklardan 50 adede kadar kurgusal numara üretin.
Telefon numarası doğrulayıcı
Telefon numarasının ülkeye göre yapısını denetleyin; bölge, tür, E.164, uluslararası, ulusal ve RFC 3966 biçimlerini görün.
Rastgele adres oluşturucu
Arayüz maketleri ve testler için üç basitleştirilmiş biçimde 1–20 adres benzeri kayıt oluşturun.
Araç diğer dillerde mevcuttur
- เครื่องมือสร้าง CSS Loader [TH]
- Trình tạo CSS Loader [VI]
- Generator Loader CSS [ID]
- Generator loaderów CSS [PL]
- CSSローディングアニメーション生成ツール [JA]
- مولّد مؤشرات التحميل بلغة CSS [AR]
- CSS-Loader-Generator [DE]
- Gerador de Loader CSS [PT]
- CSS 로딩 애니메이션 생성기 [KO]
- Generador de Cargadores CSS [ES]
- Générateur de chargeur CSS [FR]
- CSS-laddningsgenerator [SV]
- CSS-loadergenerator [NL]
- CSS Loader Generator [EN]
- Generatore di Loader CSS [IT]
- Генератор CSS-загрузчиков [RU]
- CSS 加载动画生成器 [ZH]