الفرق بين المراجعتين لصفحة: «CSS/grid-auto-rows»

من موسوعة حسوب
< CSS
لا ملخص تعديل
لا ملخص تعديل
سطر 153: سطر 153:
*صفحة الخاصية <code>grid-auto</code> والخاصيات الفرعية منها وهي: <code>[[CSS/grid-auto-columns|grid-auto-columns]]</code> و <code>[[CSS/grid-auto-flow|grid-auto-flow]]</code>.
*صفحة الخاصية <code>grid-auto</code> والخاصيات الفرعية منها وهي: <code>[[CSS/grid-auto-columns|grid-auto-columns]]</code> و <code>[[CSS/grid-auto-flow|grid-auto-flow]]</code>.
*صفحة الخاصية <code>[[CSS/grid-column|grid-]][[CSS/grid-column-start|column]]</code> والخاصيات الفرعية منها وهي: <code>[[CSS/grid-column-start|grid-column-start]]</code> و <code>[[CSS/grid-column-end|grid-column-end]]</code> و <code>[[CSS/grid-column-gap|grid-column-gap]]</code>.
*صفحة الخاصية <code>[[CSS/grid-column|grid-]][[CSS/grid-column-start|column]]</code> والخاصيات الفرعية منها وهي: <code>[[CSS/grid-column-start|grid-column-start]]</code> و <code>[[CSS/grid-column-end|grid-column-end]]</code> و <code>[[CSS/grid-column-gap|grid-column-gap]]</code>.
*صفحة الخاصية <code>[[CSS/grid-column|grid-]][[CSS/grid-row|row]]</code> والخاصيات الفرعية منها وهي: <code>[[CSS/grid-row-start|grid-row-start]]</code> و <code>[[CSS/grid-row-end|grid-row-end]]</code> و <code>[[CSS/grid-column-gap|grid-]][[CSS/grid-row-gap|row]][[CSS/grid-column-gap|-gap]]</code>.
*صفحة الخاصية <code>[[CSS/grid-row|grid-row]]</code> والخاصيات الفرعية منها وهي: <code>[[CSS/grid-row-start|grid-row-start]]</code> و <code>[[CSS/grid-row-end|grid-row-end]]</code> و <code>[[CSS/grid-column-gap|grid-]][[CSS/grid-row-gap|row]][[CSS/grid-column-gap|-gap]]</code>.
==مصادر ومواصفات==
==مصادر ومواصفات==
* مواصفة [https://drafts.csswg.org/css-grid/#propdef-grid-auto-rows CSS Grid Layout].  
* مواصفة [https://drafts.csswg.org/css-grid/#propdef-grid-auto-rows CSS Grid Layout].  

مراجعة 08:05، 12 سبتمبر 2018

الخاصية grid-auto-rows في CSS تضبط أبعاد مسارات الأسطر المُنشأة ضمنيًا.

بطاقة الخاصية

القيمة الابتدائية auto
تُطبَّق على حاويات grid.
قابلة للوراثة لا
قابلة للتحريك لا
القيمة المحسوبة كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة.
/* كلمات محجوزة */
grid-auto-rows: min-content;
grid-auto-rows: max-content;
grid-auto-rows: auto;

/* <length> */
grid-auto-rows: 100px;
grid-auto-rows: 20cm;
grid-auto-rows: 50vmax;

/* <percentage> */
grid-auto-rows: 10%;
grid-auto-rows: 33.3%;

/* <flex> */
grid-auto-rows: 0.5fr;
grid-auto-rows: 3fr;

/* minmax() */
grid-auto-rows: minmax(100px, auto);
grid-auto-rows: minmax(max-content, 2fr);
grid-auto-rows: minmax(20%, 80vmax);

/* fit-content() */
grid-auto-rows: fit-content(400px);
grid-auto-rows: fit-content(5cm);
grid-auto-rows: fit-content(20%);

/* track-size */
grid-auto-rows: min-content max-content auto;
grid-auto-rows: 100px 150px 390px;
grid-auto-rows: 10% 33.3%;
grid-auto-rows: 0.5fr 3fr 1fr;
grid-auto-rows: minmax(100px, auto) minmax(max-content, 2fr) minmax(20%, 80vmax);
grid-auto-rows: 100px minmax(100px, auto) 10% 0.5fr fit-content(400px);

/* القيم العامة */
grid-auto-rows: inherit;
grid-auto-rows: initial;
grid-auto-rows: unset;

إذا وُضِعَ عنصر grid ضمن سطرٍ أبعاده غير مُحدَّدة بوضوح عبر الخاصية grid-template-rows، فستُنشَأ مسارات ضمنية لتحتويه، وهذا يحدث إذا كان موضع العنصر في سطر خارج مجال الأعمدة المُنشأة، أو أدت خوارزمية تحديد المواضع التلقائية إلى إنشاء أسطر إضافية.

أمثلة

استعملنا في المثال الآتي الخاصية gird-auto-rows لضبط أبعاد مسارات الأسطر التي لم يُصرَّح عن أبعادها في حاوية grid، وإنما أُنشِئَت ضمنيًا:

<div id="grid">
  <div></div>
  <div></div>
  <div></div>
</div>

شيفرة CSS:

#grid {
  width: 200px;
  display: grid;
  grid-template-areas: "a a";
  grid-gap: 10px;
  grid-auto-rows: 100px;
}

#grid > div {
  background-color: lime;
}

دعم المتصفحات

الميزة Chrome Firefox Internet Explorer Opera Safari
الدعم الأساسي 57.0 52.0 10 (مع السابقة -ms-) 44 10.1

الإصدارات القديمة من متصفح Edge كانت تدعم تخطيط Grid دعمًا جزئيًا (كما في متصفح IE)، لكن الإصدار Edge 16 أصبح يدعم تخطيط Gird دعمًا كاملًا.

البنية العامة

تقبل الخاصية grid-auto-rows القيم التالية.

<length>

طول مطلق غير سالب.

<percentage>

نسبة مئوية غير سالبة، وتكون نسبةً إلى أبعاد حاوية gird، وإن كانت أبعاد حاوية grid غير مُعرَّفة، فيجب أن تُعامل النسب المئوية مثل auto.

<flex>

عدد غير سالب له الواحدة fr التي تُحدِّد عامل flex للمسار. وكل مسار حُدِّدَت أبعاده عبر هذه القيمة سيتشارك المساحة المتبقية بالتناسب مع قيمة flex له.

عندما توجد هذه القيمة خارج الدالة minmax()‎ فهي تُشير إلى القيمة الدنيا التلقائية (أي ‎minmax(auto, ‎<flex>‎)‎).

max-content

كلمة محجوزة تُمثِّل أصغر قياس لكي تتسع محتويات عنصر grid فيه.

min-content

كلمة محجوزة تُمثِّل أصغر قياس ممكن كيلا تخرج محتويات عنصر grid عن صندوق المحتوى (أي يحدث overflow).

الدالة minmax()‎

شكل هذه الدالة العام هو minmax(min, max)‎، وتُعرِّف مجال أبعاد الذي يكون أكبر أو يساوي min، وأصغر أو يساوي max، وإذا كانت max أقل من min فسيتم تجاهل max وستُعامل قيمة الدالة على أنها min.

يمكن استخدام <flex> كأكبر قيمة لهذه الدالة، ولا يجوز أن تُستعمَل كأدنى قيمة.

auto

كلمة محجوزة تمثِّل المحتوى الأكبر في عنصر gird، أو الأبعاد الدنيا لعنصر grid (المُحدَّدة عبر الخاصيتين min-width و min-height).

لاحظ أنَّ المسارات التي تكون أبعادها auto فقط هي المسارات التي يمكن أن تمتد عبر الخاصيتين align-content و justify-content.

الدالة fit-content()‎

شكل هذه الدالة العام هو fit-content( [ <length> | <percentage> ] )‎، التي تكافئ الصيغة الآتية min(max-content, max(auto, argument))‎، وهي تُحسَب بطريقة شبيهة ب auto، باستثناء أنَّ أبعاد المسار لن تتجاوز قيمة الوسيط إن كانت قيمته أكبر من auto.

البنية الرسمية

grid-auto-rows: <track-size>+

حيث:

<track-size> = <track-breadth> | minmax( <inflexible-breadth> , <track-breadth> ) | fit-content( [ <length> | <percentage> ] )

حيث:

<track-breadth> = <length-percentage> | <flex> | min-content | max-content | auto
<inflexible-breadth> = <length> | <percentage> | min-content | max-content | auto

حيث:

<length-percentage> = <length> | <percentage>

 انظر أيضًا

مصادر ومواصفات