Generator keyframes CSS
Reguła @keyframes definiuje kamienie milowe animacji: jak wygląda element na początku, w środku i na końcu. Ten generator pisze regułę dla czterech popularnych ruchów: fade-slide, pulse, spin i bounce. Nadaj animacji nazwę, ustaw czas trwania i, dla ruchów przesuwania i odbijania, odległość w pikselach. Wynik to skrócona notacja animation plus blok @keyframes, gotowy do wklejenia do arkusza stylów.
Jak wygenerować keyframes
-
1
Wybierz typ animacji
Fade slide, pulse, spin lub bounce. Każde ustawienie zawiera gotowe klatki.
-
2
Nadaj animacji nazwę
Nazwa w notacji kebab-case, na przykład `fade-slide`, używana później w skróconej notacji `animation`.
-
3
Ustaw czas trwania
W sekundach, na przykład 0.6 dla szybkiego przejścia.
-
4
Ustaw odległość (slide i bounce)
Odległość przebyta w pikselach, używana w ruchu pionowym.
-
5
Skopiuj CSS
Skrócona notacja plus blok `@keyframes`, gotowe do wklejenia do arkusza stylów.
Cztery ustawienia
Fade slide
.animated {
animation: fade-slide 0.6s ease both;
}
@keyframes fade-slide {
from { opacity: 0; transform: translateY(24px); }
to { opacity: 1; transform: translateY(0); }
}
Element pojawia się, przesuwając się z dołu do góry.
Pulse
@keyframes pulse {
0%, 100% { transform: scale(1); opacity: 1; }
50% { transform: scale(1.05); opacity: .8; }
}
Delikatny efekt pulsowania, dobry do punktów powiadomień i plakietek.
Spin
@keyframes spin {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
Pełny obrót, przydatny dla loaderów i ikon.
Bounce
@keyframes bounce {
0%, 100% { transform: translateY(0); }
50% { transform: translateY(-24px); }
}
Element podskakuje do góry i wraca.
Dlaczego transform i opacity?
Przeglądarki komponują transform i opacity na GPU bez ponownego obliczania układu i malowania, więc ich animowanie pozostaje płynne. Ustawienia celowo unikają właściwości uruchamiających obliczanie układu.
Skrócona notacja animation
animation: fade-slide 0.6s ease both; czytamy: animacja o nazwie fade-slide, trwająca 0.6 sekundy, z domyślnym przejściem ease. Tryb wypełnienia both stosuje stan początkowy przed startem animacji i utrzymuje stan końcowy po jej zakończeniu, dzięki czemu element nie miga przed ruchem ani nie cofa się gwałtownie po nim.
Konwencje nazewnictwa
- Używaj notacji kebab-case, zgodnie z konwencją CSS.
- Opisuj ruch, nie element:
fade-in-upjest lepsze niżalert-appear. - Unikaj nazw, które mogą kolidować z bibliotekami firm trzecich.
Wsparcie przeglądarek
@keyframes jest uniwersalne, obsługiwane przez każdą przeglądarkę od IE 10.
Najczęściej zadawane pytania
Fade slide dla treści wchodzących na stronę, takich jak karty, banery czy okna dialogowe. Pulse dla punktów uwagi, plakietek i przycisków, które mają się wyróżniać. Spin dla loaderów i ikon postępu. Bounce dla zabawnego podkreślenia, na przykład strzałki call-to-action.
Odległość to pionowe przemieszczenie w pikselach dla ustawień slide i bounce: animacja fade-slide zaczyna 24px niżej i przesuwa się w górę, a bounce podskakuje 24px w górę i wraca. Ustawienie spin jej nie używa.
Tak, wynik to czysty CSS. Zastąp ease dowolnym słowem kluczowym przejścia lub wartością cubic-bezier(...) i dodaj pośrednie wartości procentowe, takie jak 25% lub 75%, w bloku @keyframes, aby lepiej ukształtować ruch.
Ponieważ ponowne renderowanie przez framework może ponownie zastosować klasę i uruchomić animację od nowa. Użyj animation-fill-mode: both (już zawartego w wyniku), aby utrzymać stan końcowy, albo odłącz wyzwalacz animacji od elementu renderowanego ponownie.
Powiązane narzędzia
Tabela ASCII
Pełna tabela ASCII od 0 do 127 z zapisem dziesiętnym, szesnastkowym, ósemkowym i binarnym oraz notacją numerycznych odwołań HTML, w tym kodami sterującymi NUL, LF i DEL.
Referencja znaków HTML
Przeszukiwalna lista encji HTML wraz z ich kodami nazwanymi i liczbowymi oraz kopiowaniem jednym kliknięciem specjalnych znaków i symboli.
Podgląd Markdown
Pisz w Markdown i obserwuj, jak wyrenderowany HTML aktualizuje się na żywo. Składnia w stylu GitHub z tabelami, listami zadań, ogrodzonymi blokami kodu i automatycznymi odnośnikami.
Narzędzie odstępów w kodzie Python
Ujednolić wcięcia oraz proste odstępy przy przecinkach i operatorach. To lekka obróbka tekstu, a nie Black, Ruff ani parser Pythona.
Formater JavaScript
Formatuj JavaScript, JSX, TypeScript i JSON z konfigurowalnym wcięciem, stylem cudzysłowów, średnikami i przecinkami końcowymi.
Generator fikcyjnych numerów telefonu
Generuj do 50 fikcyjnych numerów z oficjalnie zastrzeżonych zakresów w pięciu krajach.
Narzędzie jest dostępne w innych językach
- Générateur de Keyframes CSS [FR]
- CSS Keyframes 生成 [JA]
- CSS keyframes-generator [SV]
- CSS-Keyframes-Generator [DE]
- Generator Keyframes CSS [ID]
- Trình tạo Keyframes CSS [VI]
- مولّد Keyframes CSS [AR]
- Generador de Keyframes CSS [ES]
- CSS Keyframes 생성기 [KO]
- เครื่องมือสร้าง Keyframes CSS [TH]
- CSS keyframes-generator [NL]
- Gerador de Keyframes CSS [PT]
- CSS Keyframes Generator [EN]
- Generatore di Keyframes CSS [IT]
- Генератор CSS-ключевых кадров [RU]
- CSS Keyframes Oluşturucu [TR]
- CSS Keyframes 生成器 [ZH]