مولّد حركة دوّامة CSS
حركة دوّامة CSS هي حلقة تدور بلا توقف عبر قاعدة keyframes. هنا تحدد مدة الدورة الواحدة، وتعاين الحركة، ثم تنسخ الصنف وكتلة @keyframes معاً.
كيف تضبط الحركة
-
1
أدخل السرعة
في حقل السرعة (ث)، اكتب عدد الثواني التي تستغرقها دورة كاملة، مثل 0.8 أو 1.2.
-
2
راقب المعاينة
تدور الحلقة بهذه السرعة فوراً، فيمكنك الحكم على مدى هدوئها أو إلحاحها.
-
3
اضبط الحجم واللون
غيّر الحجم والسماكة واللون ليناسب المكان الذي ستظهر فيه الحركة.
-
4
انسخ الشيفرة CSS
انسخ القواعد المولّدة. سطر الحركة وقواعد keyframes يعملان معاً.
كيف بُنيت الحركة
تتكون الشيفرة CSS المولّدة من جزأين يعملان كزوج. خاصية animation على .loader تسمي الحركة، وتحدد مدتها ودالة التوقيت، وتكررها:
animation: spin 0.8s linear infinite;
تصف قاعدة @keyframes spin الحركة نفسها. لها حالة نهائية واحدة فقط، وهي دوران بمقدار 360 درجة. يبدأ المتصفح من الموضع الطبيعي للعنصر ويتدرج حتى تلك الحالة النهائية:
@keyframes spin {
to { transform: rotate(360deg); }
}
يصبح حقل السرعة في الأداة هو المدة. أما linear وinfinite وبقية السطر فتبقى كما هي.
اختيار المدة
| الثواني لكل دورة | الإحساس |
|---|---|
| 0.4 إلى 0.6 | سريعة ومزدحمة، وقد تبدو متوترة |
| 0.8 إلى 1 | ثابتة، وهي الخيار المعتاد |
| 1.2 إلى 1.6 | هادئة، مناسبة للدوّامات الكبيرة |
| 2 أو أكثر | بطيئة، وقد تبدو متوقفة |
قد تدور الحلقات الكبيرة ببطء أكبر قليلاً من الصغيرة، لأن حافة الدائرة الكبيرة تقطع مسافة أطول في كل ثانية.
لماذا التوقيت الخطي
تستخدم الأداة linear حتى تحافظ الحلقة على السرعة الزاوية نفسها طوال الدورة. منحنيات التخفيف مثل ease-in-out تجعل الحلقة تتباطأ وتتسارع في كل دورة، وهذا يبدو كتقطّع في حلقة لا تنتهي. إذا أردت هذا التأثير رغم ذلك، فغيّر كلمة linear في الشيفرة الملصوقة.
قيود ينبغي تذكرها
- السرعة 0 تعطي حركة بطول صفر، فلن تدور الحلقة بشكل مرئي. استخدم قيمة أكبر من 0.
- تدور الدوّامة دائماً باتجاه عقارب الساعة. لعكس الاتجاه، بدّل الدوران النهائي إلى
-360degبعد النسخ. - الحركة دوران متصل واحد. أما النبض أو الارتداد أو الحركة متعددة المراحل فتحتاج إلى إطارات رئيسية إضافية تكتبها يدوياً.
إيقاف الحركة مؤقتاً والتحكم بها
بعد وضع الشيفرة في صفحتك، يمكنك التحكم بالحركة عبر الخصائص القياسية في CSS. ضبط animation-play-state: paused; يجمّد الحلقة في مكانها، وهذا مفيد عندما ينتهي العمل لكن العنصر يبقى ظاهراً. ضبط animation-delay: 0.2s; يؤخر البداية، فتظهر الدوّامة فقط إذا لم يكن الانتظار فورياً. هذه خصائص CSS عادية تضيفها إلى قاعدة .loader بعد النسخ.
الأسئلة الشائعة
خفّض الرقم في حقل السرعة (ث). القيمة 0.6 تعني أن الدورة الكاملة تستغرق ستة أعشار الثانية، فتدور أسرع من القيمة 1.
تكرر الحركة دون نهاية. إذا استبدلتها برقم مثل 3، تتوقف الحلقة بعد ثلاث دورات.
نعم. غيّر الاسم في الموضعين: بعد animation: في الصنف، وبعد @keyframes. يجب أن يتطابقا تماماً.
يستطيع المتصفح تحريك transform دون إعادة حساب تخطيط الصفحة، لذلك هو طريقة خفيفة لتحريك العنصر، وغالباً ما يبقى سلساً حتى على الأجهزة المتواضعة.
أدوات ذات صلة
مولّد إعدادات Webpack
أنشئ ملف webpack.config.js لـ webpack 5 لمشاريع JavaScript الخالصة أو React أو Vue: مع TypeScript وBabel وCSS أو Sass والصور وHtmlWebpackPlugin وخادم التطوير وسطر npm install.
محوّل ترميز ملفات النصوص
حوّل النص بين UTF-8 وUTF-16 وLatin-1 وWindows-1252 وترميزات أخرى لإصلاح الأحرف المشوّهة.
مولّد ملف .gitignore
اجمع قواعد استبعاد المشروع لـ Laravel وNode.js وPython وRails. انسخ الناتج أو نزّل ملف ZIP يحتوي على .gitignore، مع إبقاء القواعد الشخصية منفصلة.
أداة فك ترميز Protocol Buffers
فك ترميز بايتات Protobuf محليًا من hex أو Base64 أو Base64URL أو نص أو ملف، مع فحص دقيق للحقول وتصدير تقرير خاص.
مرجع جدول ASCII
جدول ASCII كامل من 0 إلى 127 مع التمثيل العشري والست عشري والثماني والثنائي والمرجع الرقمي في HTML لكل محرف، بما في ذلك أكواد التحكم مثل NUL وLF وDEL.
أداة إزالة التشفير في لغة جافا سكريبت (JavaScript Deobfuscator)
فك تمويه شيفرة JavaScript المضغوطة أو المموّهة: فك طبقات eval وpacker، وفك ترميز السلاسل المهرَّبة، وتضمين مصفوفات السلاسل، وتبسيط الثوابت، وإعادة تسمية أسماء _0x وتنسيق الشيفرة.
الأداة متاحة بلغات أخرى
- Generator för CSS-spinneranimation [SV]
- Trình tạo hoạt ảnh CSS spinner [VI]
- เครื่องมือสร้างแอนิเมชันสปินเนอร์ CSS [TH]
- Générateur d'animation de spinner CSS [FR]
- CSS 스피너 애니메이션 생성기 [KO]
- Generator Animasi CSS Spinner [ID]
- CSS-spinner animatie generator [NL]
- CSSスピナーアニメーション ジェネレーター [JA]
- CSS-Spinner-Animation Generator [DE]
- Generador de animación de spinner CSS [ES]
- Generator animacji spinera CSS [PL]
- Gerador de animação de spinner CSS [PT]
- CSS Spinner Animasyonu Oluşturucu [TR]
- CSS 加载动画生成器 [ZH]
- CSS Spinner Animation Generator [EN]
- Generatore di animazione per spinner CSS [IT]
- Генератор анимации CSS-спиннера [RU]