الدرس الثالث: إدارة الأنماط في Next.js

يلعب التصميم دورًا كبيرًا في جذب المستخدمين. في هذا الدرس، سنستكشف طرقًا مختلفة لإدارة الأنماط في Next.js

تعلم لغة Next js

February 24, 2025

Lesson Three: Managing Styles in Next.js

الدرس الثالث: إدارة الأنماط في Next.js

مقدمة

في التطبيقات الحديثة، يلعب التصميم دورًا كبيرًا في جذب المستخدمين. في هذا الدرس، سنستكشف طرقًا مختلفة لإدارة الأنماط في Next.js، بما في ذلك:

 
  1. إضافة ملفات CSS عالمية .
  2. استخدام CSS Modules للأنماط المحلية .
  3. إضافة Styling Libraries مثل Tailwind CSS أو Material-UI .
 

1. إضافة ملف CSS عالمي

Next.js يسمح بإضافة ملف CSS عالمي لتطبيقك كله. هذا الملف يمكن أن يحتوي على الأنماط الأساسية التي تُطبق على جميع الصفحات.

 

الخطوات:

1.1 إنشاء ملف CSS عالمي

  • افتح مجلد styles/ في مشروعك.
  • قم بإنشاء ملف باسم global.css.
 

1.2 إضافة الأنماط إلى الملف

أضف بعض الأنماط البسيطة إلى global.css:

 

1.3 ربط الملف مع التطبيق

للتأكد من تطبيق هذه الأنماط على جميع الصفحات، يجب ربط الملف في مكون _app.js.

 
  • افتح ملف _app.js الموجود في مجلد pages/.
  • استورد ملف global.css داخله:
 

2. استخدام CSS Modules للأنماط المحلية

CSS Modules هو أداة تتيح لك كتابة الأنماط الخاصة بكل مكون بشكل منفصل، مما يمنع تضارب الأسماء بين الأنماط.

 

الخطوات:

2.1 إنشاء ملف CSS Module

  • افتح صفحة about.js الموجودة في مجلد pages/.
  • قم بإنشاء ملف جديد باسم about.module.css بجانب ملف about.js.
 

2.2 إضافة الأنماط إلى الملف

أضف الأنماط التالية إلى about.module.css:

 

2.3 استيراد واستخدام الأنماط

عدل ملف about.js لاستخدام الأنماط:

 

3. إضافة Styling Library (مثال: Tailwind CSS)

Tailwind CSS هو إطار عمل Styling شائع يوفر فئات CSS جاهزة يمكنك استخدامها مباشرة في HTML الخاص بك.

 

الخطوات:

3.1 تثبيت Tailwind CSS

في Terminal، قم بتثبيت Tailwind CSS باستخدام الأمر التالي:

 

3.2 إنشاء ملفات تكوين Tailwind

قم بإنشاء ملفات التكوين باستخدام الأمر التالي:

 

3.3 تعديل ملف tailwind.config.js

تأكد من أن ملف tailwind.config.js يحتوي على الإعدادات التالية:

 

3.4 إضافة Tailwind إلى ملف CSS

  • افتح ملف global.css وإضافة الكود التالي:
 

3.5 استخدام Tailwind في الصفحة

عدل ملف index.js لاستخدام Tailwind:

 

4. اختبار الأنماط

بعد تنفيذ الخطوات السابقة، قم بتشغيل المشروع باستخدام:

 

افتح المتصفح واذهب إلى http://localhost:3000 . ستلاحظ أن الأنماط قد تم تطبيقها بنجاح.

 

5. مقارنة بين الأساليب المختلفة

الأسلوب
مزايا
عيوب
Global CSS
- سهل الاستخدام.<br>- مناسب للأنماط المشتركة.
- قد يحدث تضارب في الأسماء.
CSS Modules
- يمنع تضارب الأسماء.<br>- مناسب للأنماط المحلية.
- يتطلب كتابة ملفات CSS منفصلة لكل مكون.
Tailwind CSS
- لا حاجة لكتابة ملفات CSS.<br>- سريع ومرن.<br>- يوفر تصاميم حديثة.
- قد يكون صعبًا للمبتدئين.

ختام الدرس الثالث

في هذا الدرس، تعلمت كيفية:

  1. إضافة ملف CSS عالمي لتطبيقك.
  2. استخدام CSS Modules لإدارة الأنماط المحلية.
  3. إضافة Styling Library مثل Tailwind CSS.
 

في الدرس القادم، سنتحدث عن إدارة البيانات باستخدام getStaticProps وgetServerSideProps .

 

إلى اللقاء في الدرس الرابع! 🚀

التعليقات

  • Web development tutorial A-0

    تعلم برمجة المواقع الاكترونية A-0

    من الصفر إلى الاحتراف: رحلة تطوير الويب الكاملة

    عرض المقال
  • Differences Between Android and iOS

    الاختلافات بين Android وiOS

    برمجة التطبيقات المتنقلة: الاختلافات بين Android وiOS وأفضل الممارسات

    عرض المقال
  • Game Development with Unity

    تطوير الألعاب باستخدام Unity

    تطوير الألعاب باستخدام Unity: من الفكرة إلى المنتج النهائي

    عرض المقال
  • Mastering Programming with Python

    إتقان البرمجة باستخدام Python

    إتقان البرمجة باستخدام Python: المشاريع العملية والنصائح

    عرض المقال
  • What are the benefits of websites

    ما هي فوائد المواقع الاكترونية

    فوائد المواقع الإلكترونية للشركات

    عرض المقال
  • Web development tutorial A-1

    تعلم برمجة المواقع الاكترونية A-1

    الدرس الأول: تعلم لغة HTML من الصفر - مقدمة شاملة مع إعداد الأدوات

    عرض المقال
  • Web development tutorial A-2

    تعلم برمجة المواقع الاكترونية A-2

    الدرس الثاني: تعلم لغة HTML من الصفر - الوسوم المتقدمة والجداول

    عرض المقال
  • Artificial Intelligence Qwen AI

    الذكاء الاصطناعي Qwen AI

    Qwen AI هو نموذج ذكاء اصطناعي متعدد الوظائف يدعم اللغات ويتولى المهام الإبداعية والتفاعلية

    عرض المقال