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

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

المنصة

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

الحساب

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

روابط

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

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

صُنع بـ في مصر

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

منهج CSS

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

كل اللغات
مدرسة البرمجة/منهج CSS/المتغيرات الأصلية في CSS (Custom Properties / Variables: --var)

المتغيرات الأصلية في CSS (Custom Properties / Variables: --var)

css variablescss custom propertiescss --varمتغيرات CSS

الشرح

**CSS Custom Properties** (المتغيرات) هي قيم قابلة لإعادة الاستخدام تُعرَّف بشرطتين (`--`) وتُستخدم بـ `var()`.

**تعريف متغير:** `--اسم-المتغير: قيمة;`

**استخدام متغير:** `property: var(--اسم-المتغير);` `property: var(--اسم-المتغير, قيمة-احتياطية);`

**النطاق (Scope):** المتغيرات ترثها العناصر الأبناء. تعريفها على `:root` يجعلها عامة.

**الفوائد:** 1. مركزية القيم — تغيير مكان واحد يؤثر في كل الصفحة. 2. دعم الوراثة — تختلف قيمتها حسب موقع العنصر في DOM. 3. يمكن تغييرها بـ JavaScript. 4. أساس لنظام الثيمات (Dark Mode).

**الفرق عن متغيرات Sass/Less:** CSS Variables حية في المتصفح — يمكن تغييرها بـ JS، وتدعم الوراثة والـ @media.

الصياغة (Syntax)

syntax
1/* تعريف نظام ألوان ومسافات */
2:root {
3 --color-primary: #3b82f6;
4 --color-secondary: #8b5cf6;
5 --color-text: #0f172a;
6 --spacing-sm: 8px;
7 --spacing-md: 16px;
8 --spacing-lg: 32px;
9 --radius-md: 8px;
10 --radius-lg: 16px;
11}
12
13.btn-primary { background: var(--color-primary); }
14.card { padding: var(--spacing-md); border-radius: var(--radius-md); }

أمثلة عملية

مثال 1: نظام Dark Mode بالمتغيرات

نظام Dark Mode بالمتغيرات
1:root {
2 --bg: #ffffff;
3 --fg: #0f172a;
4 --border: #e2e8f0;
5 --shadow: rgba(0,0,0,0.08);
6}
7
8[data-theme="dark"] {
9 --bg: #0f172a;
10 --fg: #f1f5f9;
11 --border: #334155;
12 --shadow: rgba(0,0,0,0.4);
13}
14
15/* كل المكونات تستخدم المتغيرات تلقائياً */
16body { background: var(--bg); color: var(--fg); }
17.card {
18 background: var(--bg);
19 border: 1px solid var(--border);
20 box-shadow: 0 2px 8px var(--shadow);
21}

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

  • —ابدأ كل مشروع بتعريف المتغيرات في :root قبل كتابة أي CSS آخر.
  • —استخدم نفس أسلوب التسمية: --color-primary, --spacing-md, --radius-lg.
  • —يمكن تغيير المتغيرات بـ JS: document.documentElement.style.setProperty('--color-primary', '#ef4444').

الدرس السابق

التحكم في تدفق الرسوميات (delay, iteration-count, direction, fill-mode, play-state)

الدرس التالي

الدوال الرياضية الذكية (calc(), clamp(), min(), max())

نوفيل

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

المنصة

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

الحساب

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

روابط

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

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

صُنع بـ في مصر