الفرق بين المراجعتين لصفحة: «Bootstrap/flex»
ط إضافة عنوان الصفحة |
لا ملخص تعديل |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:أدوات Flexbox في إطار العمل Bootstrap}}</noinclude> | <noinclude>{{DISPLAYTITLE:أدوات Flexbox في إطار العمل Bootstrap}}</noinclude> | ||
استخدم أدوات Flexbox التي يقدّمها إطار العمل Bootstrap للتعامل السريع والفعّال مع | استخدم أدوات Flexbox التي يقدّمها إطار العمل Bootstrap للتعامل السريع والفعّال مع [[Bootstrap/layout overview|المُخطَّطات]]، [[Bootstrap/grid|ومحاذاة ومقاييس أعمدة نظام الشبكة]]، [[:تصنيف:Bootstrap components|وعناصر التنقّل والمكوِّنات]]. يمكن استخدام أنماط CSS مُخصّصة لتنسيق الصفحات الأكثر تعقيدًا. | ||
== تفعيل Flex == | == تفعيل السلوك المرن Flex == | ||
استعمل [[Bootstrap/display|أدوات العرض display]] لإنشاء حاويّات Flex وتحويل '''العناصر الأبناء المباشرة''' إلى عناصر Flex. تتميّز حاويّات وعناصر Flex بإمكانيّة استخدام خاصيّات Flex للتعديل عليها وتخصيصها.<syntaxhighlight lang="html"> | |||
<div class="d-flex p-2 bd-highlight">حاويّة!</div> | <div class="d-flex p-2 bd-highlight">حاويّة!</div> | ||
</syntaxhighlight><syntaxhighlight lang="html"> | </syntaxhighlight><syntaxhighlight lang="html"> | ||
سطر 20: | سطر 20: | ||
== اتّجاهات العناصر == | == اتّجاهات العناصر == | ||
عيِّن اتّجاهات عناصر Flex ضمن حاويّة Flex باستخدام أدوات الاتّجاه. يمكن في أغلب الأحيان تجاهل الصنف الأفقيّ، إذْ أنّ القيمة المبدئيّة في المتصفّح هي <code>row</code>؛ إلّا أنّك قد تحتاج أحيانًا لتحديد هذه القيمة صراحة (في حالة المُخطّطات المتجاوبة | عيِّن اتّجاهات عناصر Flex ضمن حاويّة Flex باستخدام أدوات الاتّجاه. يمكن في أغلب الأحيان تجاهل الصنف الأفقيّ، إذْ أنّ القيمة المبدئيّة في المتصفّح هي <code>row</code>؛ إلّا أنّك قد تحتاج أحيانًا لتحديد هذه القيمة صراحة (في حالة المُخطّطات المتجاوبة مثلًا). | ||
استخدم الصنف <code>.flex-row</code> لتعيين الاتجاه الأفقي (القيمة المبدئيّة في المتصفّح)، أو <code>.flex-row-reverse</code> لبدء الاتجاه الأفقي من الجانب المعاكس.<syntaxhighlight lang="html"> | استخدم الصنف <code>.flex-row</code> لتعيين الاتجاه الأفقي (القيمة المبدئيّة في المتصفّح)، أو <code>.flex-row-reverse</code> لبدء الاتجاه الأفقي من الجانب المعاكس.<syntaxhighlight lang="html"> | ||
سطر 44: | سطر 44: | ||
<div class="p-2 bd-highlight">Flex item 3</div> | <div class="p-2 bd-highlight">Flex item 3</div> | ||
</div> | </div> | ||
</syntaxhighlight>توجد كذلك تنويعات متجاوبة من <code>flex-direction</code> ( | </syntaxhighlight>توجد كذلك تنويعات متجاوبة من <code>flex-direction</code> (إذ تشير <code>direction</code> إلى الاتّجاه، الأفقيّ <code>row</code> أو العمودي <code>column</code>): | ||
* <code>.flex-row</code> | * <code>.flex-row</code> | ||
* <code>.flex-row-reverse</code> | * <code>.flex-row-reverse</code> | ||
سطر 67: | سطر 67: | ||
== توسيط المحتوى == | == توسيط المحتوى == | ||
استخدم أدوات <code>justify-content</code> على حاويّات Flexbox لتغيير محاذاة عناصر Flex على المحور | استخدم أدوات <code>justify-content</code> على حاويّات Flexbox لتغيير محاذاة عناصر Flex على المحور الرئيسي (محور السينات [X axis] في البداية أو محور العينات [Y axis] عند استخدام القيمة <code>[[CSS/flex-direction|flex-direction]]: column</code>). اختر بين <code>start</code> (القيمة المبدئيّة في المتصفّح)، أو <code>end</code>، أو <code>center</code>، أو <code>between</code> أو <code>around</code>.<syntaxhighlight lang="html"> | ||
<div class="d-flex justify-content-start bd-highlight mb-3"> | <div class="d-flex justify-content-start bd-highlight mb-3"> | ||
<div class="p-2 bd-highlight">Flex item</div> | <div class="p-2 bd-highlight">Flex item</div> | ||
سطر 121: | سطر 121: | ||
== محاذاة العناصر == | == محاذاة العناصر == | ||
استخدم أدوات في حاويّات Flex لتغيير محاذاة عناصر Flex على المحور العابر (محور | استخدم أدوات في حاويّات Flex لتغيير محاذاة عناصر Flex على المحور العابر (محور العينات [Y axis] في البداية، ومحور السينات [X axis] عند استخدام <code>[[CSS/flex-direction|flex-direction]]: column</code>). اختر بين <code>start</code>، أو <code>end</code>، أو <code>center</code>، أو <code>baseline</code> أو <code>stretch</code> (القيمة المبدئيّة في المتصفّح).<syntaxhighlight lang="html"> | ||
<div class="d-flex align-items-start bd-highlight mb-3" style="height: 100px"> | <div class="d-flex align-items-start bd-highlight mb-3" style="height: 100px"> | ||
<div class="p-2 bd-highlight">Flex item</div> | <div class="p-2 bd-highlight">Flex item</div> | ||
سطر 175: | سطر 175: | ||
== محاذاة العناصر فرديّا == | == محاذاة العناصر فرديّا == | ||
اسخدم أدوات <code>align-self</code> في عناصر Flex لتغيير محاذاتها فرديّا على المحور العابر (محور | اسخدم أدوات <code>align-self</code> في عناصر Flex لتغيير محاذاتها فرديّا على المحور العابر (محور العينات [Y axis] في البداية، ومحور السينات [X axis] عند استخدام <code>[[CSS/flex-direction|flex-direction]]: column</code>). اختر بين <code>start</code>، أو <code>end</code>، أو <code>center</code>، أو <code>baseline</code> أو <code>stretch</code> (القيمة المبدئيّة في المتصفّح).<syntaxhighlight lang="html"> | ||
<div class="d-flex bd-highlight mb-3" style="height: 100px"> | <div class="d-flex bd-highlight mb-3" style="height: 100px"> | ||
<div class="p-2 bd-highlight">Flex item</div> | <div class="p-2 bd-highlight">Flex item</div> | ||
سطر 253: | سطر 253: | ||
=== الهوامش التلقائيّة مع محاذاة العناصر === | === الهوامش التلقائيّة مع محاذاة العناصر === | ||
امزج بين <code>align-items</code>، و<code>flex-direction: column</code> و <code>margin-top: auto</code> أو <code>margin-bottom: auto</code> لنقل عنصُر Flex عموديًّا إلى أعلى الحاويّة أو أسفلها.<syntaxhighlight lang="html"> | امزج بين <code>[[CSS/align-items|align-items]]</code>، و <code>[[CSS/flex-direction|flex-direction]]: column</code> و <code>[[CSS/margin-top|margin-top]]: auto</code> أو <code>[[CSS/margin-bottom|margin-bottom]]: auto</code> لنقل عنصُر Flex عموديًّا إلى أعلى الحاويّة أو أسفلها.<syntaxhighlight lang="html"> | ||
<div class="d-flex align-items-start flex-column bd-highlight mb-3" style="height: 200px;"> | <div class="d-flex align-items-start flex-column bd-highlight mb-3" style="height: 200px;"> | ||
<div class="mb-auto p-2 bd-highlight">Flex item</div> | <div class="mb-auto p-2 bd-highlight">Flex item</div> | ||
سطر 270: | سطر 270: | ||
== التفاف العناصر == | == التفاف العناصر == | ||
تحكّم في كيفيّة التفاف عناصر Flex داخل حاويّة Flex. اختر بين عدم الالتفاف إطلاقًا (القيمة المبدئيّة في المتصفّح) عن طريق الصنف | تحكّم في كيفيّة التفاف عناصر Flex داخل حاويّة Flex. اختر بين عدم الالتفاف إطلاقًا (القيمة المبدئيّة في المتصفّح) عن طريق الصنف <code>.flex-nowrap</code>، أو الالتفاف (<code>.flex-wrap</code>) أو الالتفاف على الجهة المعاكسة (<code>.flex-wrap-reverse</code>).<syntaxhighlight lang="html"> | ||
<div class="d-flex flex-nowrap bd-highlight" style="width: 8rem;"> | <div class="d-flex flex-nowrap bd-highlight" style="width: 8rem;"> | ||
<div class="p-2 bd-highlight">Flex item</div> | <div class="p-2 bd-highlight">Flex item</div> | ||
سطر 332: | سطر 332: | ||
== الترتيب == | == الترتيب == | ||
غيّر الترتيب ''البصريّ'' لعناصر Flex مُحدَّدة باستخدام أدوات <code>order</code>. توفَّر مبدئيًّا خيّارات إضافيّة لجعل عنصُر أولًّا أو أخيرًا في الترتيب (<code>order-first</code> و<code>order-last</code>) ولإعادة تعيين الترتيب ليوافق الترتيب في كائن المستنَد. | غيّر الترتيب ''البصريّ'' لعناصر Flex مُحدَّدة باستخدام أدوات <code>order</code>. توفَّر مبدئيًّا خيّارات إضافيّة لجعل عنصُر أولًّا أو أخيرًا في الترتيب (<code>order-first</code> و<code>order-last</code>) ولإعادة تعيين الترتيب ليوافق الترتيب في كائن المستنَد. ولمّا كانت أدوات <code>order</code> تستخدم قيّمًا عدديّة (مثلًا <code>5</code>) فيمكن إنشاء أنماط CSS مُخصَّصة لإضافة قيّم جديدة.<syntaxhighlight lang="html"> | ||
<div class="d-flex flex-nowrap bd-highlight"> | <div class="d-flex flex-nowrap bd-highlight"> | ||
<div class="order-3 p-2 bd-highlight">First flex item</div> | <div class="order-3 p-2 bd-highlight">First flex item</div> | ||
سطر 339: | سطر 339: | ||
</div> | </div> | ||
</syntaxhighlight>توجد تنويعات متجاوبة على <code>order</code>: | </syntaxhighlight>توجد تنويعات متجاوبة على <code>order</code>: | ||
* <code>.order-0</code> | |||
* <code>.order-1</code> | |||
* <code>.order-2</code> | |||
* <code>.order-3</code> | |||
* <code>.order-4</code> | |||
* <code>.order-5</code> | |||
* <code>.order-6</code> | |||
* <code>.order-7</code> | |||
* <code>.order-8</code> | |||
* <code>.order-9</code> | |||
* <code>.order-10</code> | |||
* <code>.order-11</code> | |||
* <code>.order-12</code> | |||
* <code>.order-sm-0</code> | |||
* <code>.order-sm-1</code> | |||
* <code>.order-sm-2</code> | |||
* <code>.order-sm-3</code> | |||
* <code>.order-sm-4</code> | |||
* <code>.order-sm-5</code> | |||
* <code>.order-sm-6</code> | |||
* <code>.order-sm-7</code> | |||
* <code>.order-sm-8</code> | |||
* <code>.order-sm-9</code> | |||
* <code>.order-sm-10</code> | |||
* <code>.order-sm-11</code> | |||
* <code>.order-sm-12</code> | |||
* <code>.order-md-0</code> | |||
* <code>.order-md-1</code> | |||
* <code>.order-md-2</code> | |||
* <code>.order-md-3</code> | |||
* <code>.order-md-4</code> | |||
* <code>.order-md-5</code> | |||
* <code>.order-md-6</code> | |||
* <code>.order-md-7</code> | |||
* <code>.order-md-8</code> | |||
* <code>.order-md-9</code> | |||
* <code>.order-md-10</code> | |||
* <code>.order-md-11</code> | |||
* <code>.order-md-12</code> | |||
* <code>.order-lg-0</code> | |||
* <code>.order-lg-1</code> | |||
* <code>.order-lg-2</code> | |||
* <code>.order-lg-3</code> | |||
* <code>.order-lg-4</code> | |||
* <code>.order-lg-5</code> | |||
* <code>.order-lg-6</code> | |||
* <code>.order-lg-7</code> | |||
* <code>.order-lg-8</code> | |||
* <code>.order-lg-9</code> | |||
* <code>.order-lg-10</code> | |||
* <code>.order-lg-11</code> | |||
* <code>.order-lg-12</code> | |||
* <code>.order-xl-0</code> | |||
* <code>.order-xl-1</code> | |||
* <code>.order-xl-2</code> | |||
* <code>.order-xl-3</code> | |||
* <code>.order-xl-4</code> | |||
* <code>.order-xl-5</code> | |||
* <code>.order-xl-6</code> | |||
* <code>.order-xl-7</code> | |||
* <code>order-xl-8</code> | |||
* <code>.order-xl-9</code> | |||
* <code>.order-xl-10</code> | |||
* <code>.order-xl-11</code> | |||
* <code>.order-xl-12</code> | |||
== محاذاة المحتوى == | == محاذاة المحتوى == | ||
استخدم أدوات <code>align-content</code> في حاويّات Flexbox لمحاذاة عناصر Flex '''معًا''' على المحور العابر. اختر بين <code>start</code> (القيمة المبدئيّة في المتصفّح)، أو <code>end</code>، أو <code>center</code>، أو <code>between</code>، أو <code>around</code> أو <code>stretch</code>. تُستخدَم القيمة <code>flex-wrap: wrap</code> والكثير من عناصر Flex في الأمثلة التاليّة لتوضيح عمل أدوات المحاذاة. | استخدم أدوات <code>align-content</code> في حاويّات Flexbox لمحاذاة عناصر Flex '''معًا''' على المحور العابر. اختر بين <code>start</code> (القيمة المبدئيّة في المتصفّح)، أو <code>end</code>، أو <code>center</code>، أو <code>between</code>، أو <code>around</code> أو <code>stretch</code>. تُستخدَم القيمة <code>[[CSS/flex-wrap|flex-wrap]]: wrap</code> والكثير من عناصر Flex في الأمثلة التاليّة لتوضيح عمل أدوات المحاذاة. | ||
'''تنبيه:''' لا تؤثّر الخاصيّة على سطر واحد من عناصر Flex.<syntaxhighlight lang="html"> | '''تنبيه:''' لا تؤثّر الخاصيّة على سطر واحد من عناصر Flex.<syntaxhighlight lang="html"> |
مراجعة 02:30، 15 أبريل 2018
استخدم أدوات Flexbox التي يقدّمها إطار العمل Bootstrap للتعامل السريع والفعّال مع المُخطَّطات، ومحاذاة ومقاييس أعمدة نظام الشبكة، وعناصر التنقّل والمكوِّنات. يمكن استخدام أنماط CSS مُخصّصة لتنسيق الصفحات الأكثر تعقيدًا.
تفعيل السلوك المرن Flex
استعمل أدوات العرض display لإنشاء حاويّات Flex وتحويل العناصر الأبناء المباشرة إلى عناصر Flex. تتميّز حاويّات وعناصر Flex بإمكانيّة استخدام خاصيّات Flex للتعديل عليها وتخصيصها.
<div class="d-flex p-2 bd-highlight">حاويّة!</div>
<div class="d-inline-flex p-2 bd-highlight">حاويّة سطريّة تتبع تخطيط Flex!</div>
توجد كذلك تنويعات متجاوبة من الصنفيْن .d-flex
و.d-inline-flex
.
.d-flex
.d-inline-flex
.d-sm-flex
.d-sm-inline-flex
.d-md-flex
.d-md-inline-flex
.d-lg-flex
.d-lg-inline-flex
.d-xl-flex
.d-xl-inline-flex
اتّجاهات العناصر
عيِّن اتّجاهات عناصر Flex ضمن حاويّة Flex باستخدام أدوات الاتّجاه. يمكن في أغلب الأحيان تجاهل الصنف الأفقيّ، إذْ أنّ القيمة المبدئيّة في المتصفّح هي row
؛ إلّا أنّك قد تحتاج أحيانًا لتحديد هذه القيمة صراحة (في حالة المُخطّطات المتجاوبة مثلًا).
استخدم الصنف .flex-row
لتعيين الاتجاه الأفقي (القيمة المبدئيّة في المتصفّح)، أو .flex-row-reverse
لبدء الاتجاه الأفقي من الجانب المعاكس.
<div class="d-flex flex-row bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item 1</div>
<div class="p-2 bd-highlight">Flex item 2</div>
<div class="p-2 bd-highlight">Flex item 3</div>
</div>
<div class="d-flex flex-row-reverse bd-highlight">
<div class="p-2 bd-highlight">Flex item 1</div>
<div class="p-2 bd-highlight">Flex item 2</div>
<div class="p-2 bd-highlight">Flex item 3</div>
</div>
يمكن - على نحو مشابه لما سبق - تحديد الاتجاه العمودي باستخدام الصنف .flex-column
، أو الصنف .flex-column-reverse
لبدء الاتجاه العمودي من الجانب المعاكس.
<div class="d-flex flex-column bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item 1</div>
<div class="p-2 bd-highlight">Flex item 2</div>
<div class="p-2 bd-highlight">Flex item 3</div>
</div>
<div class="d-flex flex-column-reverse bd-highlight">
<div class="p-2 bd-highlight">Flex item 1</div>
<div class="p-2 bd-highlight">Flex item 2</div>
<div class="p-2 bd-highlight">Flex item 3</div>
</div>
توجد كذلك تنويعات متجاوبة من flex-direction
(إذ تشير direction
إلى الاتّجاه، الأفقيّ row
أو العمودي column
):
.flex-row
.flex-row-reverse
.flex-column
.flex-column-reverse
.flex-sm-row
.flex-sm-row-reverse
.flex-sm-column
.flex-sm-column-reverse
.flex-md-row
.flex-md-row-reverse
.flex-md-column
.flex-md-column-reverse
.flex-lg-row
.flex-lg-row-reverse
.flex-lg-column
.flex-lg-column-reverse
.flex-xl-row
.flex-xl-row-reverse
.flex-xl-column
.flex-xl-column-reverse
توسيط المحتوى
استخدم أدوات justify-content
على حاويّات Flexbox لتغيير محاذاة عناصر Flex على المحور الرئيسي (محور السينات [X axis] في البداية أو محور العينات [Y axis] عند استخدام القيمة flex-direction: column
). اختر بين start
(القيمة المبدئيّة في المتصفّح)، أو end
، أو center
، أو between
أو around
.
<div class="d-flex justify-content-start bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex justify-content-end bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex justify-content-center bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex justify-content-between bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex justify-content-around bd-highlight">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
توجد كذلك تنويعات متجاوبة من الصنف justify-content
.
.justify-content-start
.justify-content-end
.justify-content-center
.justify-content-between
.justify-content-around
.justify-content-sm-start
.justify-content-sm-end
.justify-content-sm-center
.justify-content-sm-between
.justify-content-sm-around
.justify-content-md-start
.justify-content-md-end
.justify-content-md-center
.justify-content-md-between
.justify-content-md-around
.justify-content-lg-start
.justify-content-lg-end
.justify-content-lg-center
.justify-content-lg-between
.justify-content-lg-around
.justify-content-xl-start
.justify-content-xl-end
.justify-content-xl-center
.justify-content-xl-between
.justify-content-xl-around
محاذاة العناصر
استخدم أدوات في حاويّات Flex لتغيير محاذاة عناصر Flex على المحور العابر (محور العينات [Y axis] في البداية، ومحور السينات [X axis] عند استخدام flex-direction: column
). اختر بين start
، أو end
، أو center
، أو baseline
أو stretch
(القيمة المبدئيّة في المتصفّح).
<div class="d-flex align-items-start bd-highlight mb-3" style="height: 100px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex align-items-end bd-highlight mb-3" style="height: 100px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex align-items-center bd-highlight mb-3" style="height: 100px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex align-items-baseline bd-highlight mb-3" style="height: 100px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex align-items-stretch bd-highlight" style="height: 100px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
توجد تنويعات متجاوبة على أدوات محاذاة العناصر:
.align-items-start
.align-items-end
.align-items-center
.align-items-baseline
.align-items-stretch
.align-items-sm-start
.align-items-sm-end
.align-items-sm-center
.align-items-sm-baseline
.align-items-sm-stretch
.align-items-md-start
.align-items-md-end
.align-items-md-center
.align-items-md-baseline
.align-items-md-stretch
.align-items-lg-start
.align-items-lg-end
.align-items-lg-center
.align-items-lg-baseline
.align-items-lg-stretch
.align-items-xl-start
.align-items-xl-end
.align-items-xl-center
.align-items-xl-baseline
.align-items-xl-stretch
محاذاة العناصر فرديّا
اسخدم أدوات align-self
في عناصر Flex لتغيير محاذاتها فرديّا على المحور العابر (محور العينات [Y axis] في البداية، ومحور السينات [X axis] عند استخدام flex-direction: column
). اختر بين start
، أو end
، أو center
، أو baseline
أو stretch
(القيمة المبدئيّة في المتصفّح).
<div class="d-flex bd-highlight mb-3" style="height: 100px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="align-self-start p-2 bd-highlight">اختر بين `start`، أو `end`، أو `center`، أو `baseline` أو `stretch` (القيمة المبدئيّة في المتصفّح).</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex bd-highlight mb-3" style="height: 100px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="align-self-end p-2 bd-highlight">اختر بين `start`، أو `end`، أو `center`، أو `baseline` أو `stretch` (القيمة المبدئيّة في المتصفّح).</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex bd-highlight mb-3" style="height: 100px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="align-self-center p-2 bd-highlight">اختر بين `start`، أو `end`، أو `center`، أو `baseline` أو `stretch` (القيمة المبدئيّة في المتصفّح).</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex bd-highlight mb-3" style="height: 100px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="align-self-baseline p-2 bd-highlight">عنصُر Flex مُحاذى فرديّا</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex bd-highlight" style="height: 100px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="align-self-stretch p-2 bd-highlight">اختر بين `start`، أو `end`، أو `center`، أو `baseline` أو `stretch` (القيمة المبدئيّة في المتصفّح).</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
توجد كذلك تنويعات متجاوبة من align-self
.
.align-self-start
.align-self-end
.align-self-center
.align-self-baseline
.align-self-stretch
.align-self-sm-start
.align-self-sm-end
.align-self-sm-center
.align-self-sm-baseline
.align-self-sm-stretch
.align-self-md-start
.align-self-md-end
.align-self-md-center
.align-self-md-baseline
.align-self-md-stretch
.align-self-lg-start
.align-self-lg-end
.align-self-lg-center
.align-self-lg-baseline
.align-self-lg-stretch
.align-self-xl-start
.align-self-xl-end
.align-self-xl-center
.align-self-xl-baseline
.align-self-xl-stretch
الهوامش التلقائيّة
يمكن عمل تنسيقات رائعة بمزج أدوات المحاذاة في Flex مع الهوامش التلقائيّة. توجد أدناه ثلاثة أمثلة على التحكّم في عناصر Flex باستخدام الهوامش التلقائيّة: القيمة المبدئيّة (لا هوامش)، دفع عنصُريْن إلى اليمين (.mr-auto
) ودفع عنصُريْن إلى اليسار (.ml-auto
).
للأسف لا يدعم الإصداران 10 و11 من متصفّح Internet Explorer جيّدًا الهوامش التلقائيّة على عناصر Flex التي تستخدم العناصر الآباء لها قيمة غير مبدئيّة للأداة justify-content
. راجع هذه الإجابة على Stackoverflow للمزيد من التفاصيل
<div class="d-flex bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex bd-highlight mb-3">
<div class="mr-auto p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="ml-auto p-2 bd-highlight">Flex item</div>
</div>
الهوامش التلقائيّة مع محاذاة العناصر
امزج بين align-items
، و flex-direction: column
و margin-top: auto
أو margin-bottom: auto
لنقل عنصُر Flex عموديًّا إلى أعلى الحاويّة أو أسفلها.
<div class="d-flex align-items-start flex-column bd-highlight mb-3" style="height: 200px;">
<div class="mb-auto p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex align-items-end flex-column bd-highlight mb-3" style="height: 200px;">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="mt-auto p-2 bd-highlight">Flex item</div>
</div>
التفاف العناصر
تحكّم في كيفيّة التفاف عناصر Flex داخل حاويّة Flex. اختر بين عدم الالتفاف إطلاقًا (القيمة المبدئيّة في المتصفّح) عن طريق الصنف .flex-nowrap
، أو الالتفاف (.flex-wrap
) أو الالتفاف على الجهة المعاكسة (.flex-wrap-reverse
).
<div class="d-flex flex-nowrap bd-highlight" style="width: 8rem;">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex flex-wrap bd-highlight">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex flex-wrap-reverse bd-highlight">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
توجد تنويعات متجاوبة من أصناف الالتفاف flex-wrap
:
.flex-nowrap
.flex-wrap
.flex-wrap-reverse
.flex-sm-nowrap
.flex-sm-wrap
.flex-sm-wrap-reverse
.flex-md-nowrap
.flex-md-wrap
.flex-md-wrap-reverse
.flex-lg-nowrap
.flex-lg-wrap
.flex-lg-wrap-reverse
.flex-xl-nowrap
.flex-xl-wrap
.flex-xl-wrap-reverse
الترتيب
غيّر الترتيب البصريّ لعناصر Flex مُحدَّدة باستخدام أدوات order
. توفَّر مبدئيًّا خيّارات إضافيّة لجعل عنصُر أولًّا أو أخيرًا في الترتيب (order-first
وorder-last
) ولإعادة تعيين الترتيب ليوافق الترتيب في كائن المستنَد. ولمّا كانت أدوات order
تستخدم قيّمًا عدديّة (مثلًا 5
) فيمكن إنشاء أنماط CSS مُخصَّصة لإضافة قيّم جديدة.
<div class="d-flex flex-nowrap bd-highlight">
<div class="order-3 p-2 bd-highlight">First flex item</div>
<div class="order-2 p-2 bd-highlight">Second flex item</div>
<div class="order-1 p-2 bd-highlight">Third flex item</div>
</div>
توجد تنويعات متجاوبة على order
:
.order-0
.order-1
.order-2
.order-3
.order-4
.order-5
.order-6
.order-7
.order-8
.order-9
.order-10
.order-11
.order-12
.order-sm-0
.order-sm-1
.order-sm-2
.order-sm-3
.order-sm-4
.order-sm-5
.order-sm-6
.order-sm-7
.order-sm-8
.order-sm-9
.order-sm-10
.order-sm-11
.order-sm-12
.order-md-0
.order-md-1
.order-md-2
.order-md-3
.order-md-4
.order-md-5
.order-md-6
.order-md-7
.order-md-8
.order-md-9
.order-md-10
.order-md-11
.order-md-12
.order-lg-0
.order-lg-1
.order-lg-2
.order-lg-3
.order-lg-4
.order-lg-5
.order-lg-6
.order-lg-7
.order-lg-8
.order-lg-9
.order-lg-10
.order-lg-11
.order-lg-12
.order-xl-0
.order-xl-1
.order-xl-2
.order-xl-3
.order-xl-4
.order-xl-5
.order-xl-6
.order-xl-7
order-xl-8
.order-xl-9
.order-xl-10
.order-xl-11
.order-xl-12
محاذاة المحتوى
استخدم أدوات align-content
في حاويّات Flexbox لمحاذاة عناصر Flex معًا على المحور العابر. اختر بين start
(القيمة المبدئيّة في المتصفّح)، أو end
، أو center
، أو between
، أو around
أو stretch
. تُستخدَم القيمة flex-wrap: wrap
والكثير من عناصر Flex في الأمثلة التاليّة لتوضيح عمل أدوات المحاذاة.
تنبيه: لا تؤثّر الخاصيّة على سطر واحد من عناصر Flex.
<div class="d-flex align-content-start flex-wrap bd-highlight mb-3" style="height: 200px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex align-content-end flex-wrap bd-highlight mb-3" style="height: 200px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex align-content-center flex-wrap bd-highlight mb-3" style="height: 200px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex align-content-between flex-wrap bd-highlight mb-3" style="height: 200px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex align-content-around flex-wrap bd-highlight mb-3" style="height: 200px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex align-content-stretch flex-wrap bd-highlight mb-3" style="height: 200px">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
توجد كذلك تنويعات متجاوبة على align-content
.
.align-content-start
.align-content-end
.align-content-center
.align-content-around
.align-content-stretch
.align-content-sm-start
.align-content-sm-end
.align-content-sm-center
.align-content-sm-around
.align-content-sm-stretch
.align-content-md-start
.align-content-md-end
.align-content-md-center
.align-content-md-around
.align-content-md-stretch
.align-content-lg-start
.align-content-lg-end
.align-content-lg-center
.align-content-lg-around
.align-content-lg-stretch
.align-content-xl-start
.align-content-xl-end
.align-content-xl-center
.align-content-xl-around
.align-content-xl-stretch