الدرس 16 من 17 · CSS المتقدم — من جيد إلى مذهل

الحركات — transitions و animations

الحركة الصح تضيف حياة للموقع بدون تشتيش. أول أداة: transition — تغيير ناعم بين حالتين:

button {
  background: #8b5cf6;
  transition: background .3s, transform .3s;
}

button:hover {
  background: #7c3aed;
  transform: scale(1.05);
}

أما animation مع keyframes: حركة متعددة المراحل تتكرر:

@keyframes pulse {
  0%   { transform: scale(1); }
  50%  { transform: scale(1.15); }
  100% { transform: scale(1); }
}

.badge { animation: pulse 2s infinite; }

قاعدة ذهبية: مدة 0.2 إلى 0.4 ثانية للتفاعلات الصغيرة، وحرك بـ transform و opacity لأن المتصفح يسرّعها — أما width وغيرها فتعيد حساب الصفحة كاملة وتعلّق.

اختبار سريع للدرس

جاوب على كل الأسئلة — لازم كلها صح. إذا غلطت بيطلع صندوق ذهبي يفهّمك وش الخطأ. مو عيب تغلط، كل مبرمج بالعالم غلط وأخذ منها درس.

1. وش الفرق بين transition و animation؟
2. ليش نحرك بـ transform بدل width؟
3. وش المدة المناسبة لتفاعل زر؟
الدرس 15 الدرس 17 — مشروع ختامي — نموذج تسجيل متحرك متجاوب
FeLiXFeLiX AI — مساعد المنصتين