CSS-loadergenerator
Een spinner laat de gebruiker zien dat er iets gebeurt. Deze generator maakt één cirkelvormige CSS-spinner: stel de diameter, de randdikte, de accentkleur en de rotatiesnelheid in, bekijk het live voorbeeld en kopieer de CSS. Alles is pure CSS, zonder SVG, zonder JavaScript en zonder externe bibliotheken.
Zo gebruik je de generator
-
1
Stel de grootte in
Diameter van de spinner in pixels. 40-80 px past bij de meeste knoppen en inhoudsgebieden.
-
2
Stel de randdikte in
De ring is een rand die op een cirkel wordt getekend. Een dikkere rand geeft een krachtigere boog; 4-8 px staat goed bij 60 px.
-
3
Kies de kleur
De accentkleur van de draaiende boog. De rest van de ring blijft lichtgrijs, zodat de boog opvalt.
-
4
Stel de snelheid in en kopieer de CSS
Tijd per volledige omwenteling in seconden. Rond 1 seconde is meestal ideaal; onder 500 ms voelt het gehaast, boven 2 s traag.
Hoe de gegenereerde CSS werkt
.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); }
}
De spinner is een cirkel die met een dikke rand wordt getekend. De regel border-top-color kleurt alleen de bovenkant van de ring met de accentkleur, zodat de ring als een boog leest, en de regel @keyframes spin draait hem om zijn middelpunt. Draaien met transform: rotate() houdt de animatie goedkoop, omdat de browser het element op de compositor beweegt in plaats van het beeld voor beeld opnieuw te tekenen.
Om hem op een pagina te tonen, voeg je één element toe en laad je de CSS:
<div class="loader" role="status" aria-label="Laden"></div>
Maak hem toegankelijk
- Voeg
role="status"toe, zodat schermlezers de spinner aankondigen. - Zet
aria-labelmet de statustekst, bijvoorbeeld “Laden”. - Verberg inhoud niet langer dan een paar seconden achter een spinner zonder een fallback bij time-out.
- Respecteer
prefers-reduced-motion. Vervang de draaianimatie voor gebruikers die hem uit hebben gezet door een eenvoudige fade of een statische tekst “Laden…”:
@media (prefers-reduced-motion: reduce) {
.loader { animation: none; background: currentColor; opacity: .4; }
}
Wanneer een spinner gebruiken en wanneer een optimistische UI
- Reactie onder 100 ms: geen spinner nodig; het menselijk oog merkt de vertraging nauwelijks.
- 100 ms – 1 s: een subtiele spinner (klein cirkeltje, knoptekst “Laden…”) voorkomt dubbelklikken.
- 1 s – 10 s: een duidelijke spinner, bij voorkeur met voortgang als die meetbaar is.
- > 10 s: dit is geen spinnerprobleem; zoek uit wat traag is en los dat op.
Bij het versturen van formulieren en het klikken op knoppen is een spinner in de knop meestal beter dan een overlay over de hele pagina.
Veelgestelde vragen
CSS voor eenvoudige spinners met één element (de rotatietruc met vier randen). SVG wanneer je een taps toelopende staart, meerdere stroke-dasharray-animaties of gevulde segmenten wilt die op penseelstreken lijken. CSS is kleiner en eenvoudiger; SVG is flexibeler.
Waarschijnlijk omdat je een groot element laat draaien of een niet-composietbare eigenschap animeert. Houd de spinner klein, gebruik transform: rotate() (niet top/margin) en start hem niet terwijl er andere zware animaties lopen.
Vrijwel altijd met de klok mee. Tegen de klok in voelt subtiel verkeerd, omdat de meeste echte rotatiereferenties (klokken, windmolens) met de klok mee gaan. Houd je aan de conventie, tenzij je een specifieke reden hebt.
Met een setTimeout(..., 300) in JavaScript die de loaderklasse toevoegt, plus een clearTimeout als de bewerking eerder klaar is. Dit voorkomt geflikker bij snelle reacties zonder echte vertragingen te verbergen.
Gerelateerde tools
ASCII-tabelreferentie
Volledige ASCII-tabel van 0 tot 127 met decimale, hexadecimale, octale en binaire waarden en HTML-numerieke referentienotatie, inclusief control codes zoals NUL, LF en DEL.
HTML-tekenreferentie
Een doorzoekbare lijst met HTML-entiteiten, hun benoemde en numerieke codes, plus kopiëren met één klik voor speciale tekens en symbolen.
Sneltoetsenoverzicht
Zoek gedocumenteerde standaardsneltoetsen voor VS Code, Chrome en Bash met GNU Readline op macOS, Windows en Linux.
EditorConfig-generator
Genereer een .editorconfig-bestand met uw regels voor inspringstijl en -grootte, regeleinde, tekenset en witruimte voor consistente opmaak in alle IDE's en editors.
E-mailvalidator
Valideer een e-mailadres: RFC 5322-syntaxcontrole, live MX-record-zoekopdracht, plus details over lokaal deel, domein en lengte. Er wordt geen e-mail verstuurd.
ASCII naar binair-converter
Converteer elke ASCII-string naar zijn binaire representatie. Elk teken wordt acht bits, gescheiden door spaties, klaar voor protocoltrace of huiswerk.
Tool beschikbaar in andere talen
- Generador de Cargadores CSS [ES]
- เครื่องมือสร้าง CSS Loader [TH]
- CSS 加载动画生成器 [ZH]
- CSS 로딩 애니메이션 생성기 [KO]
- Générateur de chargeur CSS [FR]
- CSS-laddningsgenerator [SV]
- Generator Loader CSS [ID]
- Gerador de Loader CSS [PT]
- CSS-Loader-Generator [DE]
- CSS Yükleyici Oluşturucu [TR]
- Generator loaderów CSS [PL]
- CSS Loader Generator [EN]
- CSSローディングアニメーション生成ツール [JA]
- Trình tạo CSS Loader [VI]
- مولّد مؤشرات التحميل بلغة CSS [AR]
- Generatore di Loader CSS [IT]
- Генератор CSS-загрузчиков [RU]