Display: flex: Difference between revisions

From binaryoption
Jump to navigation Jump to search
Баннер1
(@pipegas_WP)
 
(@CategoryBot: Обновлена категория)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
=== Display: flex: دليل شامل للمبتدئين ===
=== Display: flex: دليل شامل للمبتدئين ===


'''مقدمة'''
'''Display: flex''' هي خاصية CSS قوية تسمح لك بالتحكم في تخطيط العناصر داخل حاوية ما بطريقة مرنة وسهلة الاستخدام. تعتبر هذه الخاصية أساسية في تصميم الويب الحديث، وتوفر حلاً فعالاً لإنشاء تخطيطات معقدة ومتجاوبة مع مختلف أحجام الشاشات. في هذا المقال، سنستعرض مفهوم Display: flex بالتفصيل، مع أمثلة عملية وتوضيحات لمساعدتك على فهمه وتطبيقه في مشاريعك.
في عالم تصميم الويب الحديث، يلعب '''CSS''' دورًا حيويًا في تحديد شكل ومظهر صفحات الويب. من بين العديد من خصائص CSS، تبرز خاصية '''display: flex''' كأداة قوية ومرنة لتخطيط العناصر داخل الصفحة. يهدف هذا المقال إلى تقديم شرح مفصل لخاصية display: flex للمبتدئين، مع التركيز على المفاهيم الأساسية وكيفية استخدامها في بناء تخطيطات ويب متجاوبة (Responsive Web Design).


== ما هو Flexbox؟ ==
== ما هو Display: flex؟ ==


'''Flexbox''' (اختصار لـ Flexible Box Layout) هو نموذج تخطيط أحادي البعد في CSS.  بمعنى آخر، يساعدك Flexbox في تنظيم العناصر إما في صف واحد (row) أو عمود واحد (column).  على عكس التخطيطات التقليدية التي تعتمد على '''float''' أو '''positioning'''، يوفر Flexbox تحكمًا أكبر وأكثر سهولة في محاذاة وتوزيع المساحة بين العناصر.
ببساطة، Display: flex تحول عنصر HTML إلى '''حاوية مرنة (flex container)'''، مما يسمح لك بتحديد كيفية ترتيب العناصر الفرعية ('''flex items''' ) داخل هذه الحاويةبدلاً من استخدام طرق التخطيط التقليدية مثل '''float''' أو '''positioning'''، توفر Display: flex طريقة أكثر تحكماً ومرونة.


== لماذا نستخدم Flexbox؟ ==
== المكونات الرئيسية لـ Display: flex ==


هناك العديد من الأسباب التي تجعل Flexbox خيارًا ممتازًا لتخطيط الويب:
*  '''Flex Container (حاوية مرنة):''' هو العنصر الذي يتم تطبيق خاصية Display: flex عليه.
*  '''Flex Items (عناصر مرنة):''' هي العناصر الفرعية المباشرة داخل الحاوية المرنة.
*  '''Main Axis (المحور الرئيسي):''' هو المحور الذي يتم على أساسه ترتيب العناصر المرنة. بشكل افتراضي، يكون المحور الرئيسي أفقياً.
*  '''Cross Axis (المحور الثانوي):''' هو المحور العمودي على المحور الرئيسي.


*  '''سهولة الاستخدام:'''  Flexbox أسهل بكثير في الفهم والتطبيق مقارنةً بالطرق التقليدية.
== تطبيق Display: flex ==
*  '''المرونة:'''  يتكيف Flexbox بسهولة مع أحجام الشاشات المختلفة، مما يجعله مثاليًا لتصميم مواقع ويب متجاوبة.  راجع '''التصميم المتجاوب''' لمزيد من التفاصيل.
*  '''التحكم في المحاذاة:'''  يوفر Flexbox أدوات قوية لمحاذاة العناصر أفقيًا وعموديًا.
*  '''توزيع المساحة:'''  يمكنك بسهولة توزيع المساحة المتاحة بين العناصر باستخدام Flexbox.
*  '''ترتيب العناصر:'''  يمكنك تغيير ترتيب العناصر بصريًا دون تغيير ترتيبها في كود HTML.


== المفاهيم الأساسية في Flexbox ==
لتطبيق Display: flex، قم بتعيين قيمة الخاصية `display` للعنصر الحاوي إلى `flex`. على سبيل المثال:


لفهم Flexbox بشكل كامل، يجب عليك فهم المصطلحات التالية:
```css
.container {
  display: flex;
}
```


*  '''Flex Container:'''  هو العنصر الذي يحتوي على العناصر المرنة (Flex Items).  يتم تعيين خاصية '''display: flex''' على هذا العنصر.
== خصائص الحاوية المرنة (Flex Container) ==
*  '''Flex Items:'''  هي العناصر الموجودة داخل Flex Container.
*  '''Main Axis:'''  هو المحور الرئيسي الذي يتم ترتيب العناصر المرنة على طوله.  افتراضيًا، يكون المحور الرئيسي أفقيًا.
*  '''Cross Axis:'''  هو المحور العمودي على المحور الرئيسي.
*  '''Main Start/End:'''  بداية ونهاية المحور الرئيسي.
*  '''Cross Start/End:'''  بداية ونهاية المحور العمودي.


== خصائص Flex Container ==
هناك العديد من الخصائص التي يمكنك استخدامها للتحكم في سلوك الحاوية المرنة. إليك بعض الخصائص الأكثر شيوعاً:


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


{| class="wikitable"
== خصائص العناصر المرنة (Flex Items) ==
|+ خصائص Flex Container
|-
| **الخاصية** || **الوصف** || **القيمة الافتراضية**
|-
| '''flex-direction''' || يحدد اتجاه المحور الرئيسي. || row
|-
| '''flex-wrap''' || يحدد ما إذا كان يجب أن تلتف العناصر المرنة إلى سطر جديد إذا لم تكن هناك مساحة كافية. || nowrap
|-
| '''flex-flow''' || اختصار لـ '''flex-direction''' و '''flex-wrap'''. || row nowrap
|-
| '''justify-content''' || يحدد كيفية توزيع العناصر المرنة على طول المحور الرئيسي. || flex-start
|-
| '''align-items''' || يحدد كيفية محاذاة العناصر المرنة على طول المحور العمودي. || stretch
|-
| '''align-content''' || يحدد كيفية توزيع العناصر المرنة إذا كان هناك عدة أسطر. || stretch
|}


راجع '''justify-content'''، '''align-items'''، و '''align-content''' لمزيد من التفاصيل حول هذه الخصائص.
يمكنك أيضاً التحكم في سلوك العناصر المرنة نفسها باستخدام الخصائص التالية:


== خصائص Flex Item ==
*   '''order:''' يحدد ترتيب ظهور العنصر المرن داخل الحاوية.
 
'''flex-grow:''' يحدد مقدار المساحة الإضافية التي يجب أن يشغلها العنصر المرن إذا كانت هناك مساحة إضافية في الحاوية.
يمكنك أيضًا تطبيق خصائص CSS على Flex Items للتحكم في سلوكها الفردي.  بعض الخصائص الأكثر شيوعًا هي:
'''flex-shrink:''' يحدد مقدار المساحة التي يجب أن يتقلص بها العنصر المرن إذا كانت الحاوية ضيقة جداً.
 
'''flex-basis:''' يحدد الحجم الأولي للعنصر المرن قبل توزيع المساحة المتبقية.
{| class="wikitable"
'''align-self:''' يسمح لك بتجاوز قيمة `align-items` للعنصر المرن المحدد.
|+ خصائص Flex Item
|-
| **الخاصية** || **الوصف** || **القيمة الافتراضية**
|-
| '''order''' || يحدد ترتيب العناصر المرنة. || 0
|-
| '''flex-grow''' || يحدد مقدار المساحة الإضافية التي يجب أن يشغلها العنصر المرن. || 0
|-
| '''flex-shrink''' || يحدد مقدار المساحة التي يمكن أن يتقلصها العنصر المرن. || 1
|-
| '''flex-basis''' || يحدد الحجم الأولي للعنصر المرن. || auto
|-
| '''flex''' || اختصار لـ '''flex-grow'''، '''flex-shrink'''، و '''flex-basis'''. || 0 1 auto
|-
| '''align-self''' || يحدد كيفية محاذاة العنصر المرن على طول المحور العمودي. || auto
|}
 
راجع '''flex-grow'''، '''flex-shrink'''، و '''flex-basis''' لمزيد من التفاصيل حول هذه الخصائص.


== مثال عملي ==
== مثال عملي ==


لنأخذ مثالاً بسيطًا:
لنأخذ مثالاً بسيطاً:
 
'''HTML:'''


```html
<div class="container">
<div class="container">
   <div>العنصر الأول</div>
   <div class="item">العنصر 1</div>
   <div>العنصر الثاني</div>
   <div class="item">العنصر 2</div>
   <div>العنصر الثالث</div>
   <div class="item">العنصر 3</div>
</div>
</div>
```


'''CSS:'''
```css
 
.container {
.container {
   display: flex;
   display: flex;
   justify-content: center; /* توسيط العناصر أفقيًا */
   justify-content: center;
   align-items: center; /* توسيط العناصر عموديًا */
   align-items: center;
   height: 200px;
   height: 200px;
   background-color: #f0f0f0;
   background-color: #f0f0f0;
}
}


في هذا المثال، يتم تعيين خاصية display: flex على العنصر ذي الفئة container، مما يجعله Flex Container. يتم بعد ذلك استخدام خصائص justify-content و align-items لتوسيط العناصر المرنة أفقيًا وعموديًا داخل الحاوية.
.item {
  background-color: #ccc;
  padding: 20px;
  margin: 10px;
}
```


== استراتيجيات متقدمة ==
في هذا المثال، يتم تحويل `div` مع الفئة `container` إلى حاوية مرنة. يتم توزيع العناصر المرنة (العناصر ذات الفئة `item`) في المنتصف أفقياً وعمودياً.


*  '''التخطيطات المتجاوبة:''' استخدم '''media queries''' لتعديل خصائص Flexbox بناءً على حجم الشاشة.
== Display: flex والتصميم المتجاوب ==
*  '''التخطيطات متعددة الأعمدة:''' استخدم '''flex-wrap: wrap''' لإنشاء تخطيطات متعددة الأعمدة.
*  '''المحاذاة المتقدمة:''' استكشف خصائص '''align-content''' و '''align-self''' للحصول على تحكم أكبر في المحاذاة.
*  '''التحكم في الترتيب:''' استخدم خاصية '''order''' لتغيير ترتيب العناصر بصريًا.


== Flexbox والتحليل الفني ==
Display: flex أداة قوية لإنشاء تصميمات متجاوبة. يمكنك استخدام خاصية `flex-wrap` لجعل العناصر تلتف إلى سطر جديد على الشاشات الصغيرة، أو استخدام `flex-direction: column` لترتيب العناصر عمودياً على الشاشات الصغيرة.


على الرغم من أن Flexbox يتعلق بتصميم الويب، إلا أنه يمكن أن يؤثر على '''تجربة المستخدم (UX)'''، وهو جانب مهم في '''التحليل الفني''' للمواقع الإلكترونية.  تخطيط جيد باستخدام Flexbox يمكن أن يحسن '''معدل التحويل (Conversion Rate)''' و '''وقت البقاء (Bounce Rate)'''، وهما مقياسان رئيسيان في تحليل أداء الموقع.
== روابط لموضوعات ذات صلة ==


== Flexbox وتحليل حجم التداول ==
*  [[CSS]]
*  [[HTML]]
*  [[التصميم المتجاوب]]
*  [[Float]]
*  [[Positioning]]
*  [[CSS Grid]]
*  [[Box Model]]
*  [[Selectors]]
*  [[Specificity]]
*  [[Inheritance]]
*  [[Pseudo-classes]]
*  [[Pseudo-elements]]
*  [[Transitions]]
*  [[Animations]]
*  [[Transformations]]


في سياق تداول الخيارات الثنائية، يمكن تطبيق مفاهيم مشابهة لتلك المستخدمة في Flexbox لتحليل حجم التداول.  على سبيل المثال، يمكن استخدام '''مؤشر حجم التداول (Volume Indicator)''' لتحديد الاتجاه السائد في السوق، تمامًا كما يستخدم Flexbox لتحديد اتجاه ترتيب العناصر.  '''الشموع اليابانية (Candlestick Charts)''' يمكن اعتبارها "عناصر" يتم ترتيبها وتحليلها لتحديد فرص التداول، على غرار العناصر المرنة في Flexbox.
== استراتيجيات وتوقعات التداول ==


== موارد إضافية ==
*  [[CSS]]
*  [[التصميم المتجاوب]]
*  [[float]]
*  [[positioning]]
*  [[justify-content]]
*  [[align-items]]
*  [[align-content]]
*  [[flex-grow]]
*  [[flex-shrink]]
*  [[flex-basis]]
*  [[media queries]]
*  [[تجربة المستخدم (UX)]]
*  [[معدل التحويل (Conversion Rate)]]
*  [[وقت البقاء (Bounce Rate)]]
*  [[مؤشر حجم التداول (Volume Indicator)]]
*  [[الشموع اليابانية (Candlestick Charts)]]
*  [[التحليل الفني]]
*  [[التحليل الفني]]
*  [[التحليل الأساسي]]
*  [[التحليل الأساسي]]
*  [[إدارة المخاطر]]
*  [[إدارة المخاطر]]
*  [[استراتيجيات تداول الخيارات الثنائية]]
*  [[استراتيجية الاختراق]]
*  [[استراتيجية مارتينجال]]
*  [[استراتيجية فيبوناتشي]]
*  [[استراتيجية المتوسطات المتحركة]]
*  [[استراتيجية المتوسطات المتحركة]]
*  [[استراتيجية الاختراق]]
*  [[استراتيجية MACD]]
*  [[استراتيجية الارتداد]]
*  [[استراتيجية RSI]]
*  [[استراتيجية Fibonacci]]
*  [[أنماط الشموع اليابانية]]
*  [[حجم التداول]]
*  [[تقلبات السوق]]
*  [[التحليل الموجي]]
*  [[استراتيجية بولينجر باند]]
*  [[استراتيجية Ichimoku Cloud]]
*  [[استراتيجية Donchian Channels]]
 
=== الخلاصة ===
 
Display: flex هي خاصية CSS أساسية يجب أن يتقنها أي مطور ويب. توفر هذه الخاصية طريقة مرنة وفعالة للتحكم في تخطيط العناصر داخل حاوية ما، مما يتيح لك إنشاء تصميمات معقدة ومتجاوبة بسهولة.  من خلال فهم المكونات الرئيسية لـ Display: flex والخصائص المتاحة، يمكنك الاستفادة الكاملة من هذه الأداة القوية في مشاريعك.


[[Category:الفئة:CSS]]


== ابدأ التداول الآن ==
== ابدأ التداول الآن ==
Line 155: Line 146:
✓ تنبيهات باتجاهات السوق
✓ تنبيهات باتجاهات السوق
✓ مواد تعليمية للمبتدئين
✓ مواد تعليمية للمبتدئين
[[Category:CSS]]

Latest revision as of 12:08, 6 May 2025

Display: flex: دليل شامل للمبتدئين

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

ما هو Display: flex؟

ببساطة، Display: flex تحول عنصر HTML إلى حاوية مرنة (flex container)، مما يسمح لك بتحديد كيفية ترتيب العناصر الفرعية (flex items ) داخل هذه الحاوية. بدلاً من استخدام طرق التخطيط التقليدية مثل float أو positioning، توفر Display: flex طريقة أكثر تحكماً ومرونة.

المكونات الرئيسية لـ Display: flex

  • Flex Container (حاوية مرنة): هو العنصر الذي يتم تطبيق خاصية Display: flex عليه.
  • Flex Items (عناصر مرنة): هي العناصر الفرعية المباشرة داخل الحاوية المرنة.
  • Main Axis (المحور الرئيسي): هو المحور الذي يتم على أساسه ترتيب العناصر المرنة. بشكل افتراضي، يكون المحور الرئيسي أفقياً.
  • Cross Axis (المحور الثانوي): هو المحور العمودي على المحور الرئيسي.

تطبيق Display: flex

لتطبيق Display: flex، قم بتعيين قيمة الخاصية `display` للعنصر الحاوي إلى `flex`. على سبيل المثال:

```css .container {

 display: flex;

} ```

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

هناك العديد من الخصائص التي يمكنك استخدامها للتحكم في سلوك الحاوية المرنة. إليك بعض الخصائص الأكثر شيوعاً:

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

خصائص العناصر المرنة (Flex Items)

يمكنك أيضاً التحكم في سلوك العناصر المرنة نفسها باستخدام الخصائص التالية:

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

مثال عملي

لنأخذ مثالاً بسيطاً:

```html

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

```

```css .container {

 display: flex;
 justify-content: center;
 align-items: center;
 height: 200px;
 background-color: #f0f0f0;

}

.item {

 background-color: #ccc;
 padding: 20px;
 margin: 10px;

} ```

في هذا المثال، يتم تحويل `div` مع الفئة `container` إلى حاوية مرنة. يتم توزيع العناصر المرنة (العناصر ذات الفئة `item`) في المنتصف أفقياً وعمودياً.

Display: flex والتصميم المتجاوب

Display: flex أداة قوية لإنشاء تصميمات متجاوبة. يمكنك استخدام خاصية `flex-wrap` لجعل العناصر تلتف إلى سطر جديد على الشاشات الصغيرة، أو استخدام `flex-direction: column` لترتيب العناصر عمودياً على الشاشات الصغيرة.

روابط لموضوعات ذات صلة

استراتيجيات وتوقعات التداول

الخلاصة

Display: flex هي خاصية CSS أساسية يجب أن يتقنها أي مطور ويب. توفر هذه الخاصية طريقة مرنة وفعالة للتحكم في تخطيط العناصر داخل حاوية ما، مما يتيح لك إنشاء تصميمات معقدة ومتجاوبة بسهولة. من خلال فهم المكونات الرئيسية لـ Display: flex والخصائص المتاحة، يمكنك الاستفادة الكاملة من هذه الأداة القوية في مشاريعك.


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

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

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

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

Баннер