211 of 313 menu

The grid-row-end property

The grid-row-end property specifies an ending position of an element in a grid by rows. The property value can be a positive or negative number. If we specify a positive number, then the start position of the element is counted from top to bottom. If you specify a negative number, the element will be placed in the reverse order, i.e. from bottom to top.

Syntax

selector { grid-row-end: positive or negative number; }

Example

Let's give the elements in the grid ending positions:

<div id="parent"> <div id="elem1">1</div> <div id="elem2">2</div> <div id="elem3">3</div> </div> #parent { display: grid; padding: 10px; width: 400px; border: 2px solid #696989; } #parent > div { padding: 10px; border: 1px solid #696989; } #elem1 { grid-row-start: 1; grid-row-end: 2; } #elem2 { grid-row-start: 2; grid-row-end: 3; } #elem3 { grid-row-start: 3; grid-row-end: 4; }

:

Example

Let's make the first block occupy two rows:

<div id="parent"> <div id="elem1">1</div> <div id="elem2">2</div> <div id="elem3">3</div> </div> #parent { display: grid; grid-template-columns: 2fr 1fr; height: 300px; width: 400px; padding: 10px; border: 2px solid #696989; } #parent > div { padding: 10px; border: 1px solid #696989; } #elem1 { grid-row-start: 1; grid-row-end: 3; } #elem2 { grid-row-start: 1; grid-row-end: 2; } #elem3 { grid-row-start: 2; grid-row-end: 3; }

:

Example

Now let's assign the fourth block three rows:

<div id="parent"> <div id="elem1">1</div> <div id="elem2">2</div> <div id="elem3">3</div> <div id="elem4">4</div> </div> #parent { display: grid; grid-template-columns: 2fr 1fr; height: 300px; width: 400px; padding: 10px; border: 2px solid #696989; } #parent > div { padding: 10px; border: 1px solid #696989; } #elem1 { grid-row-start: 1; grid-row-end: 2; } #elem2 { grid-row-start: 2; grid-row-end: 3; } #elem3 { grid-row-start: 3; grid-row-end: 4; } #elem4 { grid-row-start: 1; grid-row-end: 4; }

:

Example

Now let’s specify negative numbers in the grid-row-start and grid-row-end properties. Now elem3 will occupy the top row, and elem1 will occupy the bottom row:

<div id="parent"> <div id="elem1">1</div> <div id="elem2">2</div> <div id="elem3">3</div> </div> #parent { display: grid; padding: 10px; width: 400px; border: 2px solid #696989; } #parent > div { padding: 10px; border: 1px solid #696989; } #elem1 { grid-row-start: -1; grid-row-end: -2; } #elem2 { grid-row-start: -2; grid-row-end: -3; } #elem3 { grid-row-start: -3; grid-row-end: -4; }

:

See also

  • the grid-row-start property
    that specifies a starting position of an element in a grid by rows
  • the grid-row property
    that specifies a starting and ending positions of an element in a grid by rows
  • the grid-template-rows property
    that specifies a number and width of rows in a grid
  • the grid-auto-rows property
    that specifies a number and width of rows in an implicitly-created grid
byenru