كيفية إنشاء تخطيط صفحة الويب باستخدام Tailwind CSS

Amine
09/09/2024

دورة تعليمية حول إنشاء تخطيطات باستخدام Tailwind CSS

Tailwind CSS هو إطار عمل CSS يعتمد على “الفئات المساعدة” (Utility Classes)، مما يمنحك القدرة على بناء تصاميم معقدة بسرعة وسهولة عن طريق استخدام فئات جاهزة دون الحاجة إلى كتابة الكثير من CSS المخصص.

في هذه الدورة، سنتناول كيفية إنشاء تخطيطات صفحات ويب باستخدام Tailwind CSS. سنبدأ بالأساسيات مثل الـ Flexbox و Grid، وسنتقدم نحو إنشاء تخطيطات أكثر تعقيدًا مثل تخطيطات الصفحات المتعددة الأعمدة والبطاقات، مع ضمان أن تكون التصميمات مستجيبة (Responsive).

الأهداف:

  • فهم كيفية إنشاء التخطيطات باستخدام Flexbox و Grid.
  • معرفة كيفية تخصيص التخطيطات باستخدام Tailwind CSS.
  • تعلم كيفية جعل التصميمات مستجيبة باستخدام الأدوات المدمجة في Tailwind.

الجزء الأول: Flexbox في Tailwind CSS

Flexbox هو نظام مرن لإنشاء تخطيطات مرنة وسريعة. Tailwind CSS يتيح لك استخدام Flexbox بسهولة عن طريق مجموعة من الفئات المساعدة.

الفئات الأساسية لـ Flexbox:

  • flex: تحول العنصر إلى حاوية Flexbox.
  • flex-row: تصف العناصر بشكل أفقي.
  • flex-col: تصف العناصر بشكل عمودي.
  • justify-center: لمحاذاة العناصر أفقيًا في الوسط.
  • items-center: لمحاذاة العناصر عموديًا في الوسط.

مثال على استخدام Flexbox في Tailwind CSS:


<div class="flex justify-center items-center h-screen bg-gray-200">
    <div class="bg-white p-10 rounded-lg shadow-lg">
        <h1 class="text-2xl font-bold">مرحبًا بك في موقعنا</h1>
        <p>هذا مثال بسيط لتوضيح كيفية استخدام Flexbox.</p>
    </div>
</div>

شرح المثال:

  • flex: يحول العنصر الرئيسي إلى حاوية Flexbox.
  • justify-center و items-center: تضع العناصر في وسط الحاوية أفقيًا وعموديًا.
  • h-screen: يجعل الحاوية تأخذ ارتفاع الشاشة بالكامل.
  • bg-gray-200 و bg-white: تطبق ألوان خلفية على الحاوية والمحتوى الداخلي.

الجزء الثاني: Grid في Tailwind CSS

نظام CSS Grid هو أداة قوية لإنشاء تخطيطات متعددة الأعمدة بشكل متساوي وسهل التحكم به. سنستخدم الشبكة هنا بدلاً من الـ `flex-wrap` لضمان تصميم أفضل.

الفئات الأساسية لشبكة Grid:

  • grid: لتحويل العنصر إلى شبكة.
  • grid-cols-2: لإنشاء شبكة من عمودين.
  • gap-4: لإضافة مسافة بين الأعمدة أو الصفوف.
  • md:grid-cols-4: تحويل الشبكة إلى أربعة أعمدة عند العرض على الشاشات المتوسطة.

مثال على استخدام Grid في Tailwind CSS:


<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 p-6">
    <div class="bg-blue-500 p-4 rounded-lg shadow-md text-white">
        <h2 class="text-xl font-bold">العنصر الأول</h2>
        <p>هذا هو محتوى العنصر الأول.</p>
    </div>
    <div class="bg-green-500 p-4 rounded-lg shadow-md text-white">
        <h2 class="text-xl font-bold">العنصر الثاني</h2>
        <p>هذا هو محتوى العنصر الثاني.</p>
    </div>
    <div class="bg-red-500 p-4 rounded-lg shadow-md text-white">
        <h2 class="text-xl font-bold">العنصر الثالث</h2>
        <p>هذا هو محتوى العنصر الثالث.</p>
    </div>
</div>

شرح المثال:

  • grid: تحويل الحاوية إلى شبكة.
  • grid-cols-1, md:grid-cols-2, lg:grid-cols-3: يحدد عدد الأعمدة بناءً على حجم الشاشة (عمود واحد للشاشات الصغيرة، وعمودين للشاشات المتوسطة، وثلاثة أعمدة للشاشات الكبيرة).
  • gap-6: يضيف مسافة بين العناصر في الشبكة.
  • p-4, p-6: يحدد المسافات الداخلية (Padding) للعناصر.

الجزء الثالث: تصميم مستجيب (Responsive Design) في Tailwind CSS

ميزة شبكة CSS أنها مستجيبة بشكل افتراضي عند استخدام فئات مثل `grid-cols` و `gap`. يمكنك بسهولة التحكم في عدد الأعمدة التي تظهر في الشاشات الصغيرة أو الكبيرة عن طريق استخدام `sm`, `md`, `lg`, `xl`.

مثال على تصميم مستجيب باستخدام الشبكة:


<div class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-4">
    <div class="bg-gray-200 p-4 rounded shadow">
        <h3 class="text-lg font-bold">عنصر 1</h3>
        <p>هذا هو محتوى العنصر الأول.</p>
    </div>
    <div class="bg-gray-200 p-4 rounded shadow">
        <h3 class="text-lg font-bold">عنصر 2</h3>
        <p>هذا هو محتوى العنصر الثاني.</p>
    </div>
    <div class="bg-gray-200 p-4 rounded shadow">
        <h3 class="text-lg font-bold">عنصر 3</h3>
        <p>هذا هو محتوى العنصر الثالث.</p>
    </div>
</div>

شرح المثال:

  • grid-cols-1, sm:grid-cols-2, md:grid-cols-3: عدد الأعمدة يتغير بناءً على حجم الشاشة، مع التحكم الكامل باستخدام البادئات.
  • gap-4: يحدد المسافات بين الأعمدة.
  • p-4: يضيف مسافات داخلية (padding) للعناصر لتحسين المظهر.

الجزء الرابع: تخصيص التخطيطات في Tailwind CSS

يتيح لك Tailwind CSS تخصيص التصميمات بسهولة عن طريق التحكم الكامل في المسافات، الألوان، والخطوط. على سبيل المثال، يمكنك تغيير الألوان والظلال بسهولة:

مثال على تخصيص الألوان والمسافات:


<div class="p-8 bg-blue-50 rounded-lg shadow-lg">
    <h1 class="text-3xl text-blue-600 font-bold mb-4">عنوان مخصص</h1>
    <p class="text-blue-800">هذا نص مخصص بلون أزرق وبهامش سفلي.</p>
    <button class="bg-blue-600 text-white py-2 px-4 rounded hover:bg-blue-700">
        زر مخصص
    </button>
</div>

شرح المثال:

  • bg-blue-50: خلفية بلون أزرق فاتح.
  • text-blue-600, text-blue-800: نصوص بلون أزرق بدرجات مختلفة.
  • hover:bg-blue-700: تغيير لون الخلفية عند التمرير على الزر.

الجزء الخامس: تخطيطات متعددة الأعمدة باستخدام Tailwind CSS

يمكنك بسهولة إنشاء تخطيطات متعددة الأعمدة باستخدام Tailwind CSS، باستخدام أدوات الشبكة Grid أو نظام الأعمدة Flexbox. سنرى الآن مثالاً على تخطيط صفحة يتكون من ثلاثة أقسام رئيسية.

مثال على تخطيط متعدد الأعمدة باستخدام Grid:


<div class="grid grid-cols-3 gap-4 p-6">
    <div class="col-span-1 bg-white p-4 rounded shadow">
        <h2 class="text-xl font-bold">القسم الأول</h2>
        <p>هذا هو المحتوى داخل القسم الأول.</p>
    </div>
    <div class="col-span-2 bg-gray-100 p-4 rounded shadow">
        <h2 class="text-xl font-bold">القسم الثاني</h2>
        <p>هذا هو المحتوى داخل القسم الثاني. يتمدد هذا القسم ليأخذ مساحة أكبر من الشبكة.</p>
    </div>
</div>

شرح المثال:

  • grid-cols-3: يحدد الشبكة من ثلاثة أعمدة.
  • col-span-1, col-span-2: يحدد عدد الأعمدة التي يحتلها كل قسم (القسم الأول يأخذ عمود واحد، والثاني يأخذ عمودين).
  • gap-4: يحدد المسافات بين الأعمدة.

مثال كامل لتخطيط صفحة باستخدام Tailwind CSS

الآن بعد أن تعلمنا كيفية استخدام Flexbox و Grid في إنشاء تخطيطات، سنقوم بتطبيق ما تعلمناه لإنشاء صفحة كاملة. هذه الصفحة ستحتوي على رأس، محتوى رئيسي، شريط جانبي، وتذييل.

يمكنك أيضا أن تجرب نتيجة الكود و إحداث تغييرات عليها هنا

على المتصفح سوف تشاهد هذه النتيجة

الخاتمة:

في هذه الدورة، تعلمنا كيفية استخدام Tailwind CSS لإنشاء تخطيطات مرنة وسهلة التخصيص باستخدام Flexbox و Grid. كما تعلمنا كيفية تصميم صفحات ويب مستجيبة باستخدام الأدوات المدمجة في Tailwind CSS. يمكنك الآن استخدام هذه الأدوات لتصميم صفحات ويب متقدمة وتخصيصها بناءً على احتياجاتك الخاصة.

التعليقات

اترك تعليقاً