تقنيات نور التعليمية تقنيات نور التعليمية

آخر الأخبار

جاري التحميل ...

سلسلة دروس CSS | الدرس الخامس والعشرون: أساسيات Flexbox باستخدام display: flex

ما هو Flexbox؟

نظام Flexbox هو نموذج تخطيط (layout model) في CSS يُستخدم لترتيب العناصر داخل الحاويات بشكل مرن وسهل، سواء أفقياً أو عمودياً.

سلسلة دروس CSS | الدرس الخامس والعشرون: أساسيات Flexbox باستخدام display: flex

تفعيل Flexbox

يتم تفعيل Flexbox بكتابة:

.container {
  display: flex;
}

هذا يجعل جميع العناصر داخل .container تصبح عناصر مرنة (flex items).


مثال بسيط:

<!DOCTYPE html>
<html>
<head>
  <style>
    .container {
      display: flex;
      border: 2px solid #444;
    }

    .item {
      background-color: #d1ecf1;
      padding: 20px;
      margin: 5px;
    }
  </style>
</head>
<body>

  <div class="container">
    <div class="item">عنصر 1</div>
    <div class="item">عنصر 2</div>
    <div class="item">عنصر 3</div>
  </div>

</body>
</html>

أهم الخصائص التي تُستخدم مع Flexbox:

1. flex-direction

تحدد اتجاه العناصر داخل الحاوية.

.container {
  display: flex;
  flex-direction: row;      /* أفقي (افتراضي) */
  flex-direction: row-reverse; /* أفقي معكوس */
  flex-direction: column;   /* عمودي */
  flex-direction: column-reverse; /* عمودي معكوس */
}

2. justify-content

تحدد محاذاة العناصر أفقياً داخل الحاوية.

.container {
  justify-content: flex-start;    /* بداية السطر (افتراضي) */
  justify-content: flex-end;      /* نهاية السطر */
  justify-content: center;        /* في المنتصف */
  justify-content: space-between; /* تباعد متساوٍ بين العناصر */
  justify-content: space-around;  /* تباعد خارجي متساوٍ */
}

3. align-items

تحدد محاذاة العناصر عموديًا داخل الحاوية.

.container {
  align-items: stretch;    /* تمدد العناصر (افتراضي) */
  align-items: flex-start; /* محاذاة من الأعلى */
  align-items: flex-end;   /* محاذاة من الأسفل */
  align-items: center;     /* في المنتصف عموديًا */
}

أمثلة إضافية:

<div class="container" style="display: flex; justify-content: center; align-items: center; height: 200px;">
  <div class="item">عنصر وسط الحاوية</div>
</div>

نصائح:

  • Flexbox مناسب للعناصر في صف واحد أو عمود واحد.
  • يُفضل على float و inline-block لتنظيم العناصر الحديثة.
  • يمكنك استخدام Flexbox لبناء ترويسة، شريط تنقل، بطاقات، أزرار، وغير ذلك بسهولة.

الواجب العملي:

  1. أنشئ ثلاثة صناديق داخل div واستخدم display: flex لترتيبها أفقيًا.
  2. جرّب جميع قيم justify-content و align-items.
  3. بدّل بين flex-direction: row و flex-direction: column ولاحظ الفرق.

عن الكاتب

Tamer Ahmed

التعليقات


اتصل بنا

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

جميع الحقوق محفوظة

تقنيات نور التعليمية