CSS-Tricks: A Complete Guide to Flexbox

From binaryoption
Revision as of 21:47, 22 April 2025 by Admin (talk | contribs) (@pipegas_WP)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Баннер1
  1. دليل شامل لـ Flexbox: تصميم تخطيطات ويب مرنة

مقدمة

Flexbox (اختصار لـ Flexible Box Layout) هو نموذج تخطيط CSS قوي يسمح لك بتصميم تخطيطات ويب معقدة بسهولة ومرونة. يهدف Flexbox إلى توفير طريقة أكثر فعالية للتحكم في توزيع المساحات داخل حاوية، سواء كانت هذه المساحات عبارة عن عناصر نصية أو صور أو أي محتوى آخر. هذا الدليل الشامل موجه للمبتدئين ويهدف إلى شرح المفاهيم الأساسية لـ Flexbox وتطبيقاته العملية.

لماذا نستخدم Flexbox؟

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

  • **المرونة:** يسمح بتوزيع المساحات بشكل متساوٍ أو بناءً على الاحتياجات.
  • **الترتيب:** يتيح التحكم في ترتيب العناصر داخل الحاوية بسهولة.
  • **التصميم المتجاوب:** يسهل إنشاء تخطيطات تتكيف مع أحجام الشاشات المختلفة.
  • **التوافق:** مدعوم من جميع المتصفحات الحديثة.
  • **التبسيط:** يبسط عملية تصميم واجهة المستخدم.

المفاهيم الأساسية لـ Flexbox

      1. الحاوية المرنة (Flex Container)

لتبدأ استخدام Flexbox، تحتاج إلى تحديد عنصر HTML كحاوية مرنة. يتم ذلك باستخدام خاصية `display: flex;` أو `display: inline-flex;`. الفرق بينهما هو أن `flex` تجعل الحاوية عنصرًا على مستوى الكتلة (block-level element)، بينما `inline-flex` تجعلها عنصرًا مضمنًا (inline-level element).

مثال: ```css .container {

 display: flex;

} ```

      1. العناصر المرنة (Flex Items)

العناصر المباشرة التابعة للحاوية المرنة تسمى العناصر المرنة. هذه العناصر تخضع لخصائص Flexbox.

      1. المحاور الرئيسية والفرعية (Main Axis & Cross Axis)

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

خصائص الحاوية المرنة (Container Properties)

  • `flex-direction`: يحدد اتجاه المحور الرئيسي. القيم المحتملة هي `row` (افتراضي)، `row-reverse`، `column`، و `column-reverse`.
  • `flex-wrap`: يحدد ما إذا كان يجب التفاف العناصر المرنة إلى سطر جديد إذا تجاوزت عرض الحاوية. القيم المحتملة هي `nowrap` (افتراضي)، `wrap`، و `wrap-reverse`.
  • `flex-flow`: اختصار لـ `flex-direction` و `flex-wrap`.
  • `justify-content`: يحدد كيفية توزيع العناصر المرنة على طول المحور الرئيسي. القيم المحتملة تشمل `flex-start`، `flex-end`، `center`، `space-between`، `space-around`، و `space-evenly`.
  • `align-items`: يحدد كيفية محاذاة العناصر المرنة على طول المحور الفرعي. القيم المحتملة تشمل `flex-start`، `flex-end`، `center`، `baseline`، و `stretch`.
  • `align-content`: يحدد كيفية توزيع العناصر المرنة على طول المحور الفرعي عندما يكون هناك عدة أسطر.

خصائص العناصر المرنة (Item Properties)

  • `order`: يحدد ترتيب العناصر المرنة داخل الحاوية.
  • `flex-grow`: يحدد مقدار المساحة الإضافية التي يجب أن يشغلها العنصر المرن.
  • `flex-shrink`: يحدد مقدار المساحة التي يجب أن يتقلص بها العنصر المرن.
  • `flex-basis`: يحدد الحجم الأولي للعنصر المرن قبل توزيع المساحة.
  • `flex`: اختصار لـ `flex-grow`، `flex-shrink`، و `flex-basis`.
  • `align-self`: يسمح بتجاوز قيمة `align-items` للعنصر المرن المحدد.

أمثلة عملية

      1. مثال 1: قائمة أفقية بسيطة

```html

العنصر 1
العنصر 2
العنصر 3

``` ```css .container {

 display: flex;

} ```

      1. مثال 2: قائمة عمودية

```html

العنصر 1
العنصر 2
العنصر 3

``` ```css .container {

 display: flex;
 flex-direction: column;

} ```

      1. مثال 3: توزيع المساحة بالتساوي

```html

العنصر 1
العنصر 2
العنصر 3

``` ```css .container {

 display: flex;
 justify-content: space-between;

} ```

Flexbox والتصميم المتجاوب

Flexbox مثالي لإنشاء تصميمات متجاوبة. باستخدام `flex-wrap` و `flex-direction`، يمكنك بسهولة إعادة ترتيب العناصر وتكييفها مع أحجام الشاشات المختلفة.

أدوات مساعدة في استخدام Flexbox

  • Flexbox Froggy: لعبة تعليمية ممتعة لتعلم Flexbox.
  • CSS Diner: لعبة أخرى لتعلم CSS، بما في ذلك Flexbox.
  • Flexbox Defense: لعبة تتيح لك بناء دفاعات باستخدام Flexbox.

استراتيجيات تداول الخيارات الثنائية ذات الصلة (على الرغم من أنها تبدو غير مرتبطة، إلا أنها تتطلب فهمًا للتخطيط والتوزيع)

روابط إضافية

ابدأ التداول الآن

سجل في IQ Option (الحد الأدنى للإيداع $10) افتح حساباً في Pocket Option (الحد الأدنى للإيداع $5)

انضم إلى مجتمعنا

اشترك في قناة Telegram الخاصة بنا @strategybin للحصول على: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات باتجاهات السوق ✓ مواد تعليمية للمبتدئين

Баннер