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

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

المنصة

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

الحساب

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

روابط

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

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

صُنع بـ في مصر

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

منهج CSS

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

كل اللغات
مدرسة البرمجة/منهج CSS/الفئات الزائفة الهيكلية (:nth-child, :first-of-type, :not, :has, :is, :where)

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

nth-child csscss :hascss :notpseudo-classes structural

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

1
المحدد الهيكليطريقة العمل والاستهداففائدته البرمجية
first-child أو last-childيستهدف أول أو آخر عنصر مطلق بين أخواتهممتاز لإزالة الهوامش من أول عنصر أو إضافة فاصل لآخر عنصر
first-of-type أو last-of-typeيستهدف أول أو آخر عنصر من نوع محدد بين أخواتهلتنسيق أول فقرة نصية داخل مقال دون التأثير على بقية الفقرات
nth-childيستهدف العنصر رقم n ويقبل صيغ زوجية أو فرديةتلوين الأسطر الزوجية والفردية في الجداول بشكل تبادلي جذاب
nth-of-typeيستهدف العنصر رقم n لكن يحسب نفس النوع فقطتلوين الصورة الثانية أو العنوان الثالث داخل الحاوية بدقة
only-child أو only-of-typeيستهدف العنصر إذا كان وحيداً بلا أخوةتنسيق رسائل التنبيه الفريدة التي تظهر بمفردها داخل صندوق
notيستهدف كل العناصر التي لا تطابق المحدد المكتوباستثناء زر معين أو حقل معين من التنسيق العام المطبق
isيجمع مجموعة محددات في محدد واحد ويرث أعلى خصوصيةاختصار كود التنسيق الطويل لعناصر متعددة وتجنب التكرار الممل
whereيجمع مجموعة محددات في محدد واحد لكن بخصوصية صفريةيتيح كتابة تنسيقات افتراضية يسهل التعديل عليها وإعادة كتابتها لاحقاً
hasيستهدف العنصر الأب الذي يحتوي على ابن محدد بالداخلالتحكم في تنسيق الحاوية الكبرى بناءً على وجود عنصر معين داخلها

الشرح

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

**:first-child / :last-child** — أول أو آخر عنصر بين أخواته.

**:first-of-type / :last-of-type** — أول/آخر عنصر من نوعه بين أخواته.

**:nth-child(n)** — يستهدف العنصر رقم n. يقبل صيغ مثل odd وeven و2n+1.

**:nth-of-type(n)** — مثل :nth-child لكن يحسب فقط العناصر من نفس النوع.

**:only-child / :only-of-type** — عنصر وحيد بين أخواته.

**:not(selector)** — يستهدف كل العناصر التي لا تطابق المحدد.

**:is(sel1, sel2)** — مجموعة محددات في محدد واحد (يرث أعلى خصوصية).

**:where(sel1, sel2)** — مثل :is لكن بخصوصية صفرية.

**:has(selector)** — CSS الأب! يستهدف العنصر الذي يحتوي على العنصر المحدد.

الصياغة (Syntax)

syntax
1li:nth-child(odd) { background: #f8fafc; }
2li:first-child { font-weight: bold; }
3p:not(.intro) { color: #64748b; }
4:is(h1, h2, h3) { font-family: 'Cairo', sans-serif; }
5div:has(> img) { border: 2px solid #e2e8f0; }

أمثلة عملية

مثال 1: جدول مخططي (Striped Table)

جدول مخططي (Striped Table)
1tr:nth-child(even) { background: #f1f5f9; }
2tr:first-child { background: #1e293b; color: white; }
3td:last-child { text-align: end; font-weight: 600; }

مثال 2: استخدام :has لتنسيق الأب

استخدام :has لتنسيق الأب
1/* بطاقة تحتوي صورة تأخذ تنسيقاً مختلفاً */
2.card:has(img) {
3 padding: 0;
4 overflow: hidden;
5}
6
7.card:has(img) .card-body {
8 padding: 16px;
9}
10
11/* نموذج يحتوي حقلاً غير صالح */
12form:has(input:invalid) .submit-btn {
13 opacity: 0.5;
14 pointer-events: none;
15}

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

  • —:has() هي من أقوى ميزات CSS الحديثة — تعلّمها جيداً.
  • —:where() مفيد لكتابة CSS قابل للتجاوز بسهولة (خصوصيته صفر).
  • —:nth-child(3n) يستهدف كل ثلاثة عناصر (مثالي لـ Grid columns).

الدرس السابق

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

الدرس التالي

العناصر الزائفة (::before, ::after, ::placeholder, ::selection)

نوفيل

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

المنصة

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

الحساب

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

روابط

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

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

صُنع بـ في مصر