الفرق بين المراجعتين لصفحة: «CSS/flex-direction»
لا ملخص تعديل |
لا ملخص تعديل |
||
(3 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:الخاصية <code>flex-direction</code>}}</noinclude> | <noinclude>{{DISPLAYTITLE:الخاصية <code>flex-direction</code>}}</noinclude> | ||
الخاصية <code>flex-direction</code> في CSS تُعرِّف ما هو المحور الرئيسي (main axis) في حاوية flex وما اتجاهه (عادي أم معكوس).<syntaxhighlight lang="css"> | الخاصية <code>flex-direction</code> في CSS تُعرِّف ما هو المحور الرئيسي (main axis) في حاوية flex وما اتجاهه (عادي أم معكوس). | ||
== بطاقة الخاصية == | |||
{| class="wikitable" style="width: 100%;" | |||
|- | |||
! scope="row" style="width: 20%;" |[[CSS/initial value|القيمة الابتدائية]] | |||
|<code>row</code> | |||
|- | |||
! scope="row" |تُطبَّق على | |||
|حاويات flex. | |||
|- | |||
! scope="row" |قابلة للوراثة | |||
|لا | |||
|- | |||
!قابلة للتحريك | |||
|لا | |||
|- | |||
! scope="row" |القيمة المحسوبة | |||
|كما حُدِّدَت. | |||
|}<syntaxhighlight lang="css"> | |||
/* اتجاه العناصر أفقي */ | /* اتجاه العناصر أفقي */ | ||
flex-direction: row; | flex-direction: row; | ||
سطر 19: | سطر 39: | ||
</syntaxhighlight>لاحظ أنَّ القيمتين <code>row</code> و <code>row-reverse</code> تتأثران باتجاه حاوية flex، فلو كانت الخاصية <code>dir</code> مضبوطةً إلى <code>ltr</code> (أي من اليسار إلى اليمين، كما في اللغة الإنكليزية)، فستمثِّل القيمة <code>row</code> المحور الأفقي باتجاه من اليسار إلى اليمين، و <code>row-reverse</code> ستمثِّل المحور الأفقي باتجاه من اليمين إلى اليسار؛ أما لو كانت قيمة <code>dir</code> تساوي <code>rtl</code> (أي من اليمين إلى اليسار، كما في اللغة العربية)، فستمثِّل <code>row</code> المحور الأفقي المتجه من اليمين إلى اليسار، والقيمة <code>row-reverse</code> ستُمثِّله لكن من اليسار إلى اليمين. | </syntaxhighlight>لاحظ أنَّ القيمتين <code>row</code> و <code>row-reverse</code> تتأثران باتجاه حاوية flex، فلو كانت الخاصية <code>dir</code> مضبوطةً إلى <code>ltr</code> (أي من اليسار إلى اليمين، كما في اللغة الإنكليزية)، فستمثِّل القيمة <code>row</code> المحور الأفقي باتجاه من اليسار إلى اليمين، و <code>row-reverse</code> ستمثِّل المحور الأفقي باتجاه من اليمين إلى اليسار؛ أما لو كانت قيمة <code>dir</code> تساوي <code>rtl</code> (أي من اليمين إلى اليسار، كما في اللغة العربية)، فستمثِّل <code>row</code> المحور الأفقي المتجه من اليمين إلى اليسار، والقيمة <code>row-reverse</code> ستُمثِّله لكن من اليسار إلى اليمين. | ||
== أمثلة == | == أمثلة == | ||
سطر 157: | سطر 159: | ||
تقبل الخاصية <code>flex-direction</code> قيمةً واحدةً من القيم الآتية: | تقبل الخاصية <code>flex-direction</code> قيمةً واحدةً من القيم الآتية: | ||
=== | === <code>row</code> === | ||
سيكون المحور الرئيسي لحاوية flex بنفس اتجاه النص، أي من اليسار إلى اليمين إذا كانت <code>dir</code> تساوي <code>ltr</code>، ومن اليمين إلى اليسار إذا كانت <code>dir</code> تساوي <code>rtl</code>. | سيكون المحور الرئيسي لحاوية flex بنفس اتجاه النص، أي من اليسار إلى اليمين إذا كانت <code>dir</code> تساوي <code>ltr</code>، ومن اليمين إلى اليسار إذا كانت <code>dir</code> تساوي <code>rtl</code>. | ||
=== | === <code>row-reverse</code> === | ||
لها نفس سلوك الكلمة المحجوزة <code>row</code> لكن مع عكس مكان البداية والنهاية. | لها نفس سلوك الكلمة المحجوزة <code>row</code> لكن مع عكس مكان البداية والنهاية. | ||
=== | === <code>column</code> === | ||
سيكون المحور الرئيسي لحاوية flex من الأعلى إلى الأسفل. | سيكون المحور الرئيسي لحاوية flex من الأعلى إلى الأسفل. | ||
=== | === <code>column -reverse</code> === | ||
لها نفس سلوك الكلمة المحجوزة <code>column </code> لكن مع عكس مكان البداية والنهاية. | لها نفس سلوك الكلمة المحجوزة <code>column </code> لكن مع عكس مكان البداية والنهاية. | ||
سطر 173: | سطر 175: | ||
flex-direction: row | row-reverse | column | column-reverse; | flex-direction: row | row-reverse | column | column-reverse; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== انظر أيضًا == | |||
* صفحة الخاصية <code>[[CSS/flex|flex]]</code> صفحة الخاصيات الفرعية التي تضبطها هذه الخاصية وهي: <code>[[CSS/flex-basis|flex-basis]]</code>، و <code>[[CSS/flex-flow|flex-flow]]</code>، و <code>[[CSS/flex-grow|flex-grow]]</code>، و <code>[[CSS/flex-shrink|flex-shrink]]</code>، و <code>[[CSS/flex-wrap|flex-wrap]]</code>. | |||
* صفحة كل من الخاصيات <code>[[CSS/width|width]]</code>، و <code>[[CSS/bottom|height]]</code> المسؤولة عن تحديد أبعاد العنصر. | |||
* صفحة الخاصية <code>[[CSS/position|position]]</code> التي تصف كيف يجب أن يتموضع العنصر في المستند. | |||
== مصادر ومواصفات == | == مصادر ومواصفات == | ||
* مواصفة [https://drafts.csswg.org/css-flexbox-1/#flex-direction CSS Flexible Box Layout Module]. | * مواصفة [https://drafts.csswg.org/css-flexbox-1/#flex-direction CSS Flexible Box Layout Module]. | ||
[[تصنيف:CSS]] | [[تصنيف:CSS|{{SUBPAGENAME}}]] | ||
[[تصنيف:CSS Property]] | [[تصنيف:CSS Property|{{SUBPAGENAME}}]] | ||
[[تصنيف:CSS Flexbox]] | [[تصنيف:CSS Flexbox|{{SUBPAGENAME}}]] |
المراجعة الحالية بتاريخ 08:37، 25 يوليو 2018
الخاصية flex-direction
في CSS تُعرِّف ما هو المحور الرئيسي (main axis) في حاوية flex وما اتجاهه (عادي أم معكوس).
بطاقة الخاصية
القيمة الابتدائية | row
|
---|---|
تُطبَّق على | حاويات flex. |
قابلة للوراثة | لا |
قابلة للتحريك | لا |
القيمة المحسوبة | كما حُدِّدَت. |
/* اتجاه العناصر أفقي */
flex-direction: row;
/* اتجاه العناصر أفقي، لكن بالمقلوب */
flex-direction: row-reverse;
/* اتجاه العناصر رأسي */
flex-direction: column;
/* اتجاه العناصر رأسي، لكن بالمقلوب */
flex-direction: column-reverse;
/* القيم العامة */
flex-direction: inherit;
flex-direction: initial;
flex-direction: unset;
لاحظ أنَّ القيمتين row
و row-reverse
تتأثران باتجاه حاوية flex، فلو كانت الخاصية dir
مضبوطةً إلى ltr
(أي من اليسار إلى اليمين، كما في اللغة الإنكليزية)، فستمثِّل القيمة row
المحور الأفقي باتجاه من اليسار إلى اليمين، و row-reverse
ستمثِّل المحور الأفقي باتجاه من اليمين إلى اليسار؛ أما لو كانت قيمة dir
تساوي rtl
(أي من اليمين إلى اليسار، كما في اللغة العربية)، فستمثِّل row
المحور الأفقي المتجه من اليمين إلى اليسار، والقيمة row-reverse
ستُمثِّله لكن من اليسار إلى اليمين.
أمثلة
مثال عن استخدام الخاصية flex-direction
لضبط المحور الرئيسي وضبط اتجاهه، ويبيّن استعمال الكلمات المحجوزة row
و row-reverse
و column
و column-reverse
:
<div class="grid">
<div class="col">
<div class="row">
<div class="cell">
row
<div class="container row">
<span>A</span>
<span>B</span>
<span>C</span>
</div>
</div>
<div class="cell">
row-reverse
<div class="container row-reverse">
<span>A</span>
<span>B</span>
<span>C</span>
</div>
</div>
</div>
<div class="row">
<div class="cell">
column
<div class="container column">
<span>A</span>
<span>B</span>
<span>C</span>
</div>
</div>
<div class="cell">
column-reverse
<div class="container column-reverse">
<span>A</span>
<span>B</span>
<span>C</span>
</div>
</div>
</div>
</div>
</div>
شيفرة CSS:
.grid {
width: 100%;
min-height: 100%;
display: flex;
font: 1em monospace;
}
.row {
display: flex;
flex: 1 auto;
flex-direction: row;
flex-wrap: wrap;
height: auto;
}
.col {
display: flex;
flex: 1 auto;
flex-direction: column;
height: auto;
}
.cell {
margin: .5em;
padding: .5em;
background-color: #FFF;
overflow: hidden;
text-align: center;
flex: 1 auto;
}
.container {
background: #E4F0F5;
padding: .5rem;
margin: 0 auto;
font-size: 1rem;
display:flex;
width: 11rem;
height: 11rem;
}
.container span {
display: block;
padding: 1em;
margin: .1em;
border: 1px solid black;
background: #CCC;
flex: 1;
}
.row { flex-direction: row; }
.row-reverse { flex-direction: row-reverse; }
.column { flex-direction: column; }
.column-reverse { flex-direction: column-reverse; }
دعم المتصفحات
الميزة | Chrome | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
الدعم الأساسي | 29.0 | 20.0 | 11 | 12.5 | 9.0 |
الإصدارات القديمة من بعض المتصفحات (مثل Chrome و IE و Safari) كانت تدعم flexbox لكن مع استخدام سابقة (-webkit-
أو -ms-
).
البنية العامة
تقبل الخاصية flex-direction
قيمةً واحدةً من القيم الآتية:
row
سيكون المحور الرئيسي لحاوية flex بنفس اتجاه النص، أي من اليسار إلى اليمين إذا كانت dir
تساوي ltr
، ومن اليمين إلى اليسار إذا كانت dir
تساوي rtl
.
row-reverse
لها نفس سلوك الكلمة المحجوزة row
لكن مع عكس مكان البداية والنهاية.
column
سيكون المحور الرئيسي لحاوية flex من الأعلى إلى الأسفل.
column -reverse
لها نفس سلوك الكلمة المحجوزة column
لكن مع عكس مكان البداية والنهاية.
البنية الرسمية
flex-direction: row | row-reverse | column | column-reverse;
انظر أيضًا
- صفحة الخاصية
flex
صفحة الخاصيات الفرعية التي تضبطها هذه الخاصية وهي:flex-basis
، وflex-flow
، وflex-grow
، وflex-shrink
، وflex-wrap
. - صفحة كل من الخاصيات
width
، وheight
المسؤولة عن تحديد أبعاد العنصر. - صفحة الخاصية
position
التي تصف كيف يجب أن يتموضع العنصر في المستند.
مصادر ومواصفات
- مواصفة CSS Flexible Box Layout Module.