نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر

نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
CSS

منهج CSS

دليل مرجعي شامل

كل اللغات
مدرسة البرمجة/منهج CSS/الفئات الزائفة لحالة العناصر (:hover, :focus, :active, :checked)

الفئات الزائفة لحالة العناصر (:hover, :focus, :active, :checked)

css pseudo-classeshoverfocuscss interactive states

جدول مرجعي سريع

1
الفئة الزائفةالحالة والتأثير المستهدفالاستخدام الشائع
hoverعند تمرير مؤشر الفأرة فوق العنصرتغيير لون الأزرار أو الروابط لجعل الموقع تفاعلياً حيوياً
focusعند تحديد العنصر بالنقر أو بلوحة المفاتيحتمييز حقول الإدخال في النماذج أثناء كتابة البيانات
focus-visibleعند تحديد العنصر عبر لوحة المفاتيح فقطتحسين تجربة التصفح لمستخدمي الكيبورد دون التأثير على الماوس
activeفي لحظة الضغط الفعلي بالنقر على العنصرإعطاء انطباع بصري بأن الزر تم النقر عليه لأسفل
checkedعندما يكون خيار الاختيار محدد ومفعلاًتنسيق صناديق الاختيار من نوع تشيك بوكس وراديو
disabled أو enabledلعناصر النماذج والأزرار المعطلة أو المتاحةرماد وتعتيم الأزرار غير القابلة للنقر لمنع الإرسال بالخطأ
visited أو linkللروابط التي زارها المستخدم أو التي لم يزرهاتمييز روابط المقالات المقروءة سابقاً بموقعك ونوفيل لسهولة التصفح

الشرح

الفئات الزائفة (Pseudo-classes) تتيح تنسيق العناصر بناءً على حالتها أو تفاعل المستخدم معها، دون أن تكون هذه الحالة موجودة في HTML.

**الأكثر استخداماً:**

**:hover** — عندما يمرر المستخدم الفأرة فوق العنصر.

**:focus** — عندما يكون العنصر محدداً (عبر لوحة المفاتيح أو النقر). مهم جداً للوصولية (Accessibility).

**:focus-visible** — مثل :focus لكن يظهر فقط عند التنقل بلوحة المفاتيح (لا الماوس).

**:active** — لحظة الضغط على العنصر.

**:checked** — عندما يكون checkbox أو radio button محدداً.

**:disabled / :enabled** — لعناصر النموذج المعطّلة أو المفعّلة.

**:visited / :link** — للروابط التي زارها المستخدم أو لم يزرها بعد.

الصياغة (Syntax)

syntax
1a:hover { text-decoration: underline; }
2input:focus { outline: 2px solid #3b82f6; }
3button:active { transform: scale(0.97); }
4input[type="checkbox"]:checked + label { font-weight: bold; }

أمثلة عملية

مثال 1: زر تفاعلي كامل

زر تفاعلي كامل
1.btn {
2 background: #3b82f6;
3 color: white;
4 padding: 10px 24px;
5 border: none;
6 border-radius: 8px;
7 cursor: pointer;
8 transition: all 0.2s ease;
9}
10
11.btn:hover {
12 background: #2563eb;
13 box-shadow: 0 4px 12px rgba(37,99,235,0.4);
14}
15
16.btn:active {
17 transform: scale(0.96);
18 background: #1d4ed8;
19}
20
21.btn:focus-visible {
22 outline: 3px solid #93c5fd;
23 outline-offset: 2px;
24}
25
26.btn:disabled {
27 opacity: 0.5;
28 cursor: not-allowed;
29}

مثال 2: تنسيق checkbox مخصص

تنسيق checkbox مخصص
1input[type="checkbox"]:checked + label {
2 color: #10b981;
3 font-weight: 600;
4 text-decoration: line-through;
5}

نصائح احترافية

  • —دائماً نسّق :focus-visible لضمان وصولية لوحة المفاتيح — لا تحذف outline بدون بديل.
  • —استخدم :hover مع transition للحصول على انتقالات سلسة.
  • —:checked مع ~ يتيح بناء toggles وaccordions بدون JavaScript.

الدرس السابق

محددات الصفات (Attribute Selectors)

الدرس التالي

الفئات الزائفة الهيكلية (:nth-child, :first-of-type, :not, :has, :is, :where)

نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر