الخاصية grid-column

من موسوعة حسوب
< CSS
اذهب إلى: تصفح، ابحث
الخاصية grid-column في CSS هي خاصية مختصرة تضبط قيمة الخاصيتين grid-column-start و grid-column-end التي تُحدِّد أبعاد عنصر grid ومكانه في العمود.
/* كلمات محجوزة */
grid-column: auto;
grid-column: auto / auto;

/* <custom-ident> */
grid-column: somegridarea;
grid-column: somegridarea / someothergridarea;

/* <integer> + <custom-ident> */
grid-column: somegridarea 4;
grid-column: 4 somegridarea / 6;

/* span + <integer> + <custom-ident> */
grid-column: span 3;
grid-column: span somegridarea;
grid-column: 5 somegridarea span;
grid-column: span 3 / 6;
grid-column: span somegridarea / span someothergridarea;
grid-column: 5 somegridarea span / 2 span;

/* القيم العامة */
grid-column: inherit;
grid-column: initial;
grid-column: unset;
إذا حُدِّد قيمتَي <grid-line> فستُضبَط قيمة الخاصية grid-column-start قبل الشرطة المائلة /، وقيمة الخاصية grid-column-end بعد الشرطة المائلة.
القيمة الابتدائية لكل خاصية مختصرة:
تُطبَّق على عناصر grid الموجودة داخل حاويات grid.
قابلة للوراثة لا
قابلة للتحريك لا
القيمة المحسوبة لكل خاصية مختصرة:

أمثلة

مثال عن استخدام grid-column لجعل عنصر grid الثاني يمتد بدءًا من خط العمود الثاني وانتهاءً بخط العمود الرابع، وجعل عنصر grid الثالث يمتد على عمودين على أن تكون نهايته عند خط العمود السابع. لاحظ استخدام الدالة repeat()‎ مع الخاصية grid-template-rows:
<div id="grid">
  <div id="item1"></div>
  <div id="item2"></div>
  <div id="item3"></div>
</div>
شيفرة CSS:
#grid {
  display: grid;
  height: 100px;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: 100px;
}

#item1 {
  background-color: lime;
}

#item2 {
  background-color: yellow;
  grid-column: 2 / 4;
}

#item3 {
  background-color: blue;
  grid-column: span 2 / 7;
}

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

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

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

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

تقبل الخاصية grid-column قيمةً واحدةً أو قيمتين هما <grid-line>. إذا حُدِّدَت قيمةٌ واحدة فهي قيمة الخاصية grid-column-start، وإذا حُدِّدَت قيمتان فستؤديان إلى ضبط قيمة الخاصية grid-column-start و grid-column-end على التوالي، ويُفصَل بين القيمتين بشرطة مائلة /.

قيمة <grid-line> تُحدِّد كما يلي:

القيمة auto

تُشير هذه الكلمة المحجوزة إلى أنَّ هذه الخاصية لن تُساهم في تحديد موضع عنصر grid.

القيمة <custom-ident>

إذا كان هنالك سطرٌ له الاسم ‎<custom-ident>-start فستساهم هذه القيمة في تحديد موضع عنصر grid في ذاك العمود.

ملاحظة: المناطق المسماة (grid areas) ستولد -ضمنيًا- أسماء أعمدة لها هذا الشكل، فلو ضبطنا قيمة هذه الخاصية إلى foo، فسيبدأ العنصر من حافة المنطقة المسماة (ما لم يكن هنالك سطرٌ آخر باسم foo-start حُدِّدَ اسمه بوضوح قبل تعريف هذه المنطقة).

القيمة‎<integer> && <custom-ident>?

تحديد موضع عنصر grid حسب قيمة العدد الصحيح <integer> نسبةً إلى العمود؛ وإذا كانت قيمة العدد الصحيح سالبةً فسيبدأ العد بالمقلوب، أي بدءًا من حافة النهاية للشبكة. لا يجوز أن تكون قيمة العدد الصحيح مساويةً للصفر.

القيمةspan && [ <integer> || <custom-ident> ]

تحديد موضع عنصر grid حسب قيمة العدد الصحيح <integer> نسبةً إلى العمود وبدءًا من حافة النهاية، ولا يجوز أن تكون قيمة العدد الصحيح مساويةً للصفر، ولا يجوز أن تكون قيمة <custom-ident> تساوي span.

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

grid-column: <grid-line> [ / <grid-line> ]?;
حيث:
<grid-line> = auto | <custom-ident> | [ <integer> && <custom-ident>? ] | [ span && [ <integer> || <custom-ident> ] ]

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