مولّد Keyframes CSS
تعرف قاعدة @keyframes محطات الحركة الأساسية: كيف يبدو العنصر في البداية والوسط والنهاية. هذا المولّد يكتب القاعدة لأربع حركات شائعة: الانحلال والانزلاق، والنبض، والدوران، والارتداد. سمِّ الحركة، واضبط مدتها، ولحركتي الانزلاق والارتداد مسافة الانتقال بالبكسل. الناتج هو الصيغة المختصرة animation بالإضافة إلى كتلة @keyframes، جاهزة للصق في ورقة الأنماط.
كيف تنشئ keyframes
-
1
اختر نوع الحركة
انحلال مع انزلاق، أو نبض، أو دوران، أو ارتداد. تأتي كل صيغة جاهزة بإطاراتها.
-
2
سمِّ الحركة
اسم بصيغة kebab-case مثل `fade-slide`، يُستخدم لاحقًا في الصيغة المختصرة `animation`.
-
3
اضبط المدة
بالثواني، مثل 0.6 لانتقال سريع.
-
4
اضبط المسافة (الانزلاق والارتداد)
مسافة الانتقال بالبكسل، المستخدمة في الحركة الرأسية.
-
5
انسخ CSS
الصيغة المختصرة وكتلة `@keyframes`، جاهزتان لورقة الأنماط.
الصيغ الأربع
الانحلال مع الانزلاق
.animated {
animation: fade-slide 0.6s ease both;
}
@keyframes fade-slide {
from { opacity: 0; transform: translateY(24px); }
to { opacity: 1; transform: translateY(0); }
}
يظهر العنصر بينما ينزلق إلى الأعلى من الأسفل.
النبض
@keyframes pulse {
0%, 100% { transform: scale(1); opacity: 1; }
50% { transform: scale(1.05); opacity: .8; }
}
تأثير تنفس لطيف، مناسب لنقاط الإشعارات والشارات.
الدوران
@keyframes spin {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
دورة كاملة، مفيدة لمؤشرات التحميل والأيقونات.
الارتداد
@keyframes bounce {
0%, 100% { transform: translateY(0); }
50% { transform: translateY(-24px); }
}
يقفز العنصر إلى الأعلى ثم يعود.
لماذا transform و opacity؟
تُركّب المتصفحات transform وopacity على وحدة معالجة الرسومات دون إعادة حساب التخطيط أو الرسم، لذلك يظل تحريكهما سلسًا. تتجنب الصيغ عن قصد الخصائص التي تحفز حساب التخطيط.
الصيغة المختصرة animation
تُقرأ animation: fade-slide 0.6s ease both; هكذا: حركة باسم fade-slide، مدتها 0.6 ثانية، بمنحنى ease الافتراضي. وضع التعبئة both يطبق حالة البداية قبل انطلاق الحركة ويحافظ على حالة النهاية بعد اكتمالها، ما يمنع العنصر من الوميض قبلها أو الارتداد فجأة بعدها.
قواعد التسمية
- استخدم kebab-case وفق اصطلاح CSS.
- صف الحركة لا العنصر:
fade-in-upأفضل منalert-appear. - تجنب الأسماء التي قد تتعارض مع مكتبات خارجية.
دعم المتصفحات
@keyframes شامل، مدعوم في كل متصفح منذ IE 10.
الأسئلة الشائعة
الانحلال مع الانزلاق للمحتوى الداخل إلى الصفحة، مثل البطاقات واللافتات والحوارات. النبض لنقاط الانتباه والشارات والأزرار التي يجب أن تبرز. الدوران لمؤشرات التحميل وأيقونات التقدم. الارتداد لتأكيد مرح، مثل سهم دعوة إلى الإجراء.
المسافة هي الانتقال الرأسي بالبكسل لصيغتي الانزلاق والارتداد: تبدأ حركة الانحلال والانزلاق من 24px في الأسفل ثم تنزلق للأعلى، بينما يرتد الارتداد 24px إلى الأعلى ثم يعود. صيغة الدوران لا تستخدمها.
نعم، الناتج CSS خالص. استبدل ease بأي كلمة مفتاحية للمنحنى أو بقيمة cubic-bezier(...)، وأضف نسبًا مئوية وسيطة مثل 25% أو 75% داخل كتلة @keyframes لتشكيل الحركة أكثر.
لأن إعادة العرض من إطار العمل قد تعيد تطبيق الفئة وتشغل الحركة من جديد. استخدم animation-fill-mode: both (موجودة بالفعل في الناتج) للاحتفاظ بحالة النهاية، أو افصل مشغل الحركة عن العنصر المعاد عرضه.
أدوات ذات صلة
مرجع جدول ASCII
جدول ASCII كامل من 0 إلى 127 مع التمثيل العشري والست عشري والثماني والثنائي والمرجع الرقمي في HTML لكل محرف، بما في ذلك أكواد التحكم مثل NUL وLF وDEL.
مرجع أحرف HTML
قائمة قابلة للبحث بكيانات HTML، مع رموزها المسمّاة والرقمية، بالإضافة إلى خيار النسخ بنقرة واحدة للأحرف والرموز الخاصة.
مرجع اختصارات لوحة المفاتيح
ابحث في الاختصارات الافتراضية الموثقة لـ VS Code وChrome وBash مع GNU Readline على macOS وWindows وLinux.
عدّاد FPS
قِس معدل الإطارات FPS في المتصفح عبر requestAnimationFrame: تنعيم، وأدنى وأقصى معدل إطارات، وحد تنبيه، ورسم بياني اختياري. يعمل محليًا بلا رفع ملفات وبلا API.
منسق JSON
الصق JSON لتنسيقه بمسافتين أو أربع مسافات، أو تصغيره إلى ناتج مضغوط، أو فحص بنيته بسرعة قبل نسخ النتيجة.
محاكي عدّاد البرنامج
تتبّع قائمة مبسطة من التعليمات ثابتة الطول عبر التسميات والتفرعات والقفزات والاستدعاءات والعودة وعناوين 16 أو 24 أو 32 بت.
الأداة متاحة بلغات أخرى
- CSS Keyframes 생성기 [KO]
- Trình tạo Keyframes CSS [VI]
- CSS keyframes-generator [NL]
- CSS Keyframes 生成器 [ZH]
- CSS-Keyframes-Generator [DE]
- CSS Keyframes Generator [EN]
- Generator Keyframes CSS [ID]
- CSS keyframes-generator [SV]
- Generator keyframes CSS [PL]
- เครื่องมือสร้าง Keyframes CSS [TH]
- Generador de Keyframes CSS [ES]
- Générateur de Keyframes CSS [FR]
- Gerador de Keyframes CSS [PT]
- CSS Keyframes 生成 [JA]
- CSS Keyframes Oluşturucu [TR]
- Generatore di Keyframes CSS [IT]
- Генератор CSS-ключевых кадров [RU]