Skip to content

CSS grid-row-start Property

The CSS grid-row-start property defines the start of the item inside of the grid row, adding a span, a line or nothing to its grid location and specifies the block-start line of the grid area of the item. This property is a part of the grid-row shorthand property.

Initial Valueauto
Applies toGrid items.
InheritedNo.
AnimatableYes. The placement of items is animatable.
VersionCSS Grid Layout Module Level 1
DOM Syntaxobject.style.gridRowStart = "5";

Syntax

CSS grid-row-start syntax

css
grid-row-start: auto | <line> | span <number> | initial | inherit;

Note: <line> is a placeholder for a line number or a custom line name.

Example of the grid-row-start property:

CSS grid-row-start code example

html
<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      .grid-container {
        display: grid;
        grid-template-columns: auto auto auto auto;
        gap: 20px;
        background-color: #ccc;
        padding: 10px;
      }
      .grid-container > div {
        background-color: #eee;
        text-align: center;
        padding: 30px 0;
        font-size: 30px;
      }
      .box {
        grid-row-start: auto;
      }
    </style>
  </head>
  <body>
    <h2>Grid-row-start property example</h2>
    <div class="grid-container">
      <div>1</div>
      <div>2</div>
      <div class="box">3</div>
      <div>4</div>
      <div>5</div>
      <div>6</div>
    </div>
  </body>
</html>

Result

CSS grid-row-start first row

Example of the grid-row-start property, where the third box starts from the first row:

CSS grid-row-start first row example

html
<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      .grid-container {
        display: grid;
        grid-template-columns: auto auto auto auto;
        gap: 20px;
        background-color: #ccc;
        padding: 10px;
      }
      .grid-container > div {
        background-color: #eee;
        text-align: center;
        padding: 30px 0;
        font-size: 30px;
      }
      .box {
        grid-row-start: 1;
      }
    </style>
  </head>
  <body>
    <h2>Grid-row-start property example</h2>
    <div class="grid-container">
      <div>1</div>
      <div>2</div>
      <div class="box">3</div>
      <div>4</div>
      <div>5</div>
      <div>6</div>
    </div>
  </body>
</html>

Example of the grid-row-start property, where the fourth box starts from the second row:

CSS grid-row-start second row example

html
<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      .grid-container {
        display: grid;
        grid-template-columns: auto auto auto auto;
        gap: 20px;
        background-color: #ccc;
        padding: 10px;
      }
      .grid-container > div {
        background-color: #eee;
        text-align: center;
        padding: 30px 0;
        font-size: 30px;
      }
      .box {
        grid-row-start: 2;
      }
    </style>
  </head>
  <body>
    <h2>Grid-row-start property example</h2>
    <div class="grid-container">
      <div>1</div>
      <div>2</div>
      <div>3</div>
      <div class="box">4</div>
      <div>5</div>
      <div>6</div>
    </div>
  </body>
</html>

Example of the grid-row-start property with the span keyword:

CSS grid-row-start span example

html
<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      .grid-container {
        display: grid;
        grid-template-columns: auto auto auto auto;
        gap: 20px;
        background-color: #ccc;
        padding: 10px;
      }
      .grid-container > div {
        background-color: #eee;
        text-align: center;
        padding: 30px 0;
        font-size: 30px;
      }
      .box {
        grid-row-start: span 2;
      }
    </style>
  </head>
  <body>
    <h2>Grid-row-start property example with span</h2>
    <div class="grid-container">
      <div>1</div>
      <div>2</div>
      <div class="box">3</div>
      <div>4</div>
      <div>5</div>
      <div>6</div>
    </div>
  </body>
</html>

Result

CSS grid-row-start span example

Example of the initial and inherit values:

CSS grid-row-start initial/inherit example

css
.box-initial {
  grid-row-start: initial; /* Resets to the default 'auto' behavior */
}
.box-inherit {
  grid-row-start: inherit; /* Inherits the value from the parent grid item */
}

Note: initial is typically used to reset the property to its default behavior, while inherit is useful when a child grid item needs to match the placement behavior of its parent.

Values

ValueDescriptionPlay it
autoSpans one row. Exact placement depends on grid auto-placement rules. This is the default value of this property.Play it »
<line>Specifies a line number or name where the item should start.Play it »
initialMakes the property use its default value.
inheritInherits the property from its parent element.

Note: When combined with grid-row-end, ensure the start line is before the end line to prevent overlapping or collapsed grid items.

Practice

What does the grid-row-start property in CSS specify?

Dual-run preview — compare with live Symfony routes.