Can I use... Flexbox
هل يمكنني استخدام... Flexbox؟ دليل شامل للمبتدئين
Flexbox (صندوق مرن) هو نموذج تخطيط CSS قوي يسمح لك بتصميم واجهات مستخدم مرنة ومستجيبة بسهولة. يهدف هذا المقال إلى تقديم نظرة عامة شاملة على Flexbox للمبتدئين، مع شرح المفاهيم الأساسية وكيفية تطبيقها في مشاريعك.
ما هو Flexbox؟
تقليدياً، كان تخطيط صفحات الويب يعتمد على تقنيات مثل `float` و `positioning`. هذه الطرق يمكن أن تكون معقدة وصعبة الصيانة، خاصةً عند التعامل مع تخطيطات معقدة أو تصميمات متجاوبة. Flexbox يغير هذا من خلال توفير طريقة أكثر فعالية ومرونة للتحكم في توزيع العناصر داخل حاوية.
Flexbox مصمم للتعامل مع التخطيطات أحادية البعد – إما في صف واحد (row) أو عمود واحد (column). هذا يجعله مثالياً لتخطيط عناصر القائمة، أشرطة الأدوات، وحتى تخطيطات الصفحة بأكملها.
المفاهيم الأساسية لـ Flexbox
لفهم Flexbox، يجب أن تكون على دراية ببعض المفاهيم الأساسية:
- **Flex Container (حاوية Flex):** العنصر الذي يحتوي على العناصر المرنة. يتم تعريف الحاوية باستخدام الخاصية `display: flex;` أو `display: inline-flex;`.
- **Flex Items (عناصر Flex):** العناصر المباشرة التابعة لحاوية Flex. هذه العناصر تخضع لخصائص Flexbox.
- **Main Axis (المحور الرئيسي):** المحور الذي يتم على طوله ترتيب العناصر المرنة. بشكل افتراضي، يكون المحور الرئيسي أفقياً (من اليسار إلى اليمين).
- **Cross Axis (المحور الثانوي):** المحور العمودي على المحور الرئيسي.
- **Justify-content:** تحدد كيفية توزيع العناصر المرنة على طول المحور الرئيسي.
- **Align-items:** تحدد كيفية توزيع العناصر المرنة على طول المحور الثانوي.
- **Flex-direction:** تحدد اتجاه المحور الرئيسي (row, column, row-reverse, column-reverse).
خصائص الحاوية (Container Properties)
الخصائص التالية يتم تطبيقها على حاوية Flex:
- `flex-direction`: تحدد اتجاه العناصر المرنة. القيم الممكنة هي `row` (افتراضي)، `column`، `row-reverse`، و `column-reverse`. تخطيط الصفحة
- `flex-wrap`: تحدد ما إذا كان يجب أن تلتف العناصر المرنة إلى سطر جديد إذا لم يكن هناك مساحة كافية. القيم الممكنة هي `nowrap` (افتراضي)، `wrap`، و `wrap-reverse`. تصميم متجاوب
- `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`: تحدد الحجم الأولي للعنصر المرن قبل توزيع المساحة المتاحة. حجم العناصر
- `align-self`: تسمح لك بتجاوز قيمة `align-items` للعنصر المرن المحدد. محاذاة فردية
مثال عملي
لنأخذ مثالاً بسيطاً:
```css .container {
display: flex; flex-direction: row; justify-content: space-around; align-items: center; background-color: lightblue; height: 200px;
}
.item {
width: 100px; height: 50px; background-color: lightcoral; border: 1px solid black;
} ```
هذا الكود سينشئ حاوية Flex تحتوي على ثلاثة عناصر. العناصر ستُرتب في صف واحد، مع مساحة متساوية بينها، وستكون محاذية في المنتصف عمودياً. أمثلة CSS
Flexbox والتصميم المتجاوب
Flexbox هو أداة قوية لإنشاء تصميمات متجاوبة. من خلال استخدام `flex-wrap` و `flex-direction`، يمكنك بسهولة تغيير تخطيط العناصر بناءً على حجم الشاشة. تصميم متجاوب باستخدام Flexbox
مقارنة بين Flexbox و Grid
بينما يشترك كل من Flexbox و CSS Grid في بعض أوجه التشابه، إلا أنهما يخدمان أغراضًا مختلفة. Flexbox مثالي للتخطيطات أحادية البعد، بينما Grid مثالي للتخطيطات ثنائية البعد. مقارنة بين Flexbox و Grid
استراتيجيات تداول الخيارات الثنائية ذات الصلة
على الرغم من أن Flexbox يتعلق بتصميم الويب، إلا أن فهمه يمكن أن يساعد في تطوير واجهات مستخدم لـ:
- استراتيجية مارتينجال – تصميم واجهة عرض بيانات التداول.
- استراتيجية المضاعفة - تصميم واجهة لعرض الرسوم البيانية.
- استراتيجية المتوسط المتحرك – تصميم لوحات معلومات تداول.
- استراتيجية اختراق النطاق - تصميم واجهة عرض إشعارات التداول.
- استراتيجية الدعم والمقاومة – تصميم واجهة تحليل الرسوم البيانية.
- التحليل الفني - تصميم واجهة لعرض المؤشرات الفنية.
- تحليل حجم التداول - تصميم واجهة لعرض بيانات الحجم.
- الشموع اليابانية - تصميم واجهة عرض أنماط الشموع.
- مؤشر القوة النسبية (RSI) – تصميم واجهة عرض قيم RSI.
- مؤشر الماكد (MACD) – تصميم واجهة عرض قيم MACD.
- مؤشر ستوكاستيك – تصميم واجهة عرض قيم ستوكاستيك.
- بولينجر باندز - تصميم واجهة عرض نطاقات بولينجر.
- مستويات فيبوناتشي - تصميم واجهة عرض مستويات فيبوناتشي.
- التحليل الأساسي - تصميم واجهة لعرض الأخبار الاقتصادية.
- إدارة المخاطر – تصميم واجهة لعرض نسب المخاطرة.
موارد إضافية
- Flexbox Froggy: لعبة تعليمية لتعلم Flexbox.
- CSS Tricks: A Complete Guide to Flexbox: دليل شامل لـ Flexbox.
- MDN Web Docs: Flexbox: وثائق Flexbox الرسمية.
- Can I use Flexbox: تحقق من توافق المتصفحات مع Flexbox.
- تخطيطات CSS المتقدمة
الخلاصة
Flexbox هو أداة أساسية لأي مطور ويب. من خلال فهم المفاهيم الأساسية وتجربة الخصائص المختلفة، يمكنك إنشاء واجهات مستخدم مرنة ومتجاوبة بسهولة.
ابدأ التداول الآن
سجل في IQ Option (الحد الأدنى للإيداع $10) افتح حساباً في Pocket Option (الحد الأدنى للإيداع $5)
انضم إلى مجتمعنا
اشترك في قناة Telegram الخاصة بنا @strategybin للحصول على: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات باتجاهات السوق ✓ مواد تعليمية للمبتدئين