CSS - grid-template-rows 屬性



CSS grid-template-rows 屬性用於定義網格佈局中行數和大小。值是用空格分隔的列表。

語法

grid-template-rows: none | auto | max-content | min-content | length | initial | inherit;

屬性值

描述
none 如果需要,可以建立行。預設值。
auto 行的大小取決於容器的大小和行中專案內容的大小。
max-content 使用此值時,每行的尺寸取決於該行中最大專案的尺寸。
min-content 使用此值時,每行的尺寸取決於該行中最小的專案的尺寸。
length 行的尺寸以長度單位指定(例如 px、em 等)。

CSS 網格模板行屬性示例

以下示例使用不同的值解釋了grid-template-rows 屬性。

使用 none 值的網格模板行屬性

為了不為網格容器定義任何明確的行大小,我們使用none 值。它有效地重置行定義,網格將不使用任何已定義的行結構。這在以下示例中顯示。

示例

<!DOCTYPE html>
<html>

<head>
   <style>
      .grid-container {
         display: grid;
         grid-template-rows: none;
         grid-gap: 10px;
         background-color: lightgray;
         padding: 10px;
      }

      .grid-container>div {
         border: 3px solid blue;
         color: white;
         background-color: #4d4dff;
         text-align: center;
         padding: 20px;
      }
   </style>
</head>

<body>
   <h2>
      CSS grid-template-rows property
   </h2>
   <h4>
      grid-template-rows: none
   </h4>
   <div class="grid-container">
      <div>
         Item-1
      </div>
      <div>
         Item-2
      </div>
      <div>
         Item-3
      </div>
      <div>
         Item-4
      </div>
   </div>

</body>

</html>

使用 auto 值的網格模板行屬性

為了允許行根據其內容自動調整大小,我們使用auto 值。每行的高度都足以容納其內容。這在以下示例中顯示。

示例

<!DOCTYPE html>
<html>

<head>
   <style>
      .grid-container {
         display: grid;
         grid-template-columns: auto auto auto;
         grid-template-rows: auto auto auto;
         grid-gap: 10px;
         background-color: lightgray;
         padding: 10px;
      }

      .grid-container>div {
         border: 3px solid blue;
         color: white;
         background-color: #4d4dff;
         text-align: center;
         padding: 20px;
      }
   </style>
</head>

<body>
   <h2>
      CSS grid-template-rows property
   </h2>
   <h4>
      grid-template-rows: auto auto auto 
      (3 rows are created and sizes depend
      on the size of container and content of items)
   </h4>
   <div class="grid-container">
      <div>
         Item-1
      </div>
      <div>
         Item-2
      </div>
      <div>
         Item-3
      </div>
      <div>
         Item-4
      </div>
      <div>
         Item-5
      </div>
      <div>
         Item-6
      </div>
      <div>
         Item-7
      </div>
      <div>
         Item-8
      </div>
      <div>
         Item-9
      </div>
   </div>

</body>

</html>

使用 max-content 值的網格模板行屬性

為了使行的高度與其內容所需的一樣高,而沒有任何截斷或換行,我們使用max-content 值。無論網格容器的大小如何,行都將擴充套件以適應其包含的最長內容。這在以下示例中顯示。

示例

<!DOCTYPE html>
<html>

<head>
   <style>
      .grid-container {
         display: grid;
         grid-template-columns: auto auto auto;
         grid-template-rows: 
         max-content max-content max-content;
         grid-gap: 10px;
         background-color: lightgray;
         padding: 10px;
      }

      .grid-container>div {
         border: 3px solid blue;
         color: white;
         background-color: #4d4dff;
         text-align: center;
         padding: 20px;
      }
   </style>
</head>

<body>
   <h2>
      CSS grid-template-rows property
   </h2>
   <h4>
      grid-template-rows: max-content 
      max-content max-content (3 rows are
      created and sizes depend on the largest
      item in the row)
   </h4>
   <div class="grid-container">
      <div>
         This is Item-1
      </div>
      <div>
         2
      </div>
      <div>
         This is Item-3 in row 1
      </div>
      <div>
         Item-4
      </div>
      <div>
         Item-5
      </div>
      <div>
         Item-6
      </div>
      <div>
         Item-7
      </div>
      <div>
         8
      </div>
      <div>
         Item-9
      </div>
   </div>

</body>

</html>

使用 min-content 值的網格模板行屬性

為了使行儘可能短,同時仍然適合其內容而不會溢位,我們使用min-content 值。行的高度僅需顯示其內容而無需換行,但不會更窄。這在以下示例中顯示。

示例

<!DOCTYPE html>
<html>

<head>
   <style>
      .grid-container {
         display: grid;
         grid-template-columns: auto auto auto;
         grid-template-rows: 
         min-content min-content min-content;
         grid-gap: 10px;
         background-color: lightgray;
         padding: 10px;
      }

      .grid-container > div {
         border: 3px solid blue;
         color: white;
         background-color: #4d4dff;
         text-align: center;
         padding: 20px;
      }
   </style>
</head>

<body>
   <h2>
      CSS grid-template-rows property
   </h2>
   <h4>
      grid-template-rows: min-content 
      min-content min-content (3 rows 
      are created and sizes depend on the 
      smallest item in the row)
   </h4>
   <div class="grid-container">
      <div>
         Item-1
      </div>
      <div>
         2
      </div>
      <div>
         Item-3
      </div>
      <div>
         4
      </div>
      <div>
         5
      </div>
      <div>
         6
      </div>
      <div>
         Item-7
      </div>
      <div>
         8
      </div>
      <div>
         Item-9
      </div>
   </div>

</body>

</html>

使用長度值的網格模板行屬性

可以使用長度值(例如 px、em、rem 等)設定行數和大小。根據提供的值,將建立具有指定寬度的行數。這在以下示例中顯示。

示例

<!DOCTYPE html>
<html>

<head>
   <style>
      .container{
         display: grid;
         grid-gap: 10px;
         background-color: lightgray;
         padding: 10px;
         grid-template-columns: auto auto auto;
      }
      .grid-container1 {
         grid-template-rows: 140px 200px 140px;
      }
      .grid-container2{
         grid-template-rows: 10em 7em 10em;
      }
      .container > div {
         border: 3px solid blue;
         color: white;
         background-color: #4d4dff;
         text-align: center;
         padding: 20px;
      }
      .
   </style>
</head>

<body>
   <h2>
      CSS grid-template-rows property
   </h2>
   <h4>
      grid-template-rows: 150px 200px 150px 
      (3 rows are created and sizes are 150px,
      200px and 150px respectively)
   </h4>
   <div class=" container grid-container1">
      <div>
         Item-1
      </div>
      <div>
         Item-2
      </div>
      <div>
         Item-3
      </div>
      <div>
         Item-4
      </div>
      <div>
         Item-5
      </div>
      <div>
         Item-6
      </div>
      <div>
         Item-7
      </div>
      <div>
         Item-8
      </div>
      <div>
         Item-9
      </div>
   </div>
   <h4>
   grid-template-rows: 10em 7em 10em 
   (3 rows are created and sizes are 
   10em, 7em and 10em respectively)
   </h4>
   <div class="container grid-container2">
      <div>
         Item-1
      </div>
      <div>
         Item-2
      </div>
      <div>
         Item-3
      </div>
      <div>
         Item-4
      </div>
      <div>
         Item-5
      </div>
      <div>
         Item-6
      </div>
      <div>
         Item-7
      </div>
      <div>
         Item-8
      </div>
      <div>
         Item-9
      </div>
   </div>

</body>

</html>

使用百分比值的網格模板行屬性

可以使用百分比值(例如 10%、20%)設定行數和大小。根據提供的值,將建立具有指定寬度的行數。這在以下示例中顯示。

示例

<!DOCTYPE html>
<html>

<head>
   <style>
      .grid-container {
         display: grid;
         height: 400px;
         grid-gap: 10px;
         background-color: lightgray;
         padding: 10px;
         grid-template-columns: auto auto auto;
         grid-template-rows: 25% 15% 25%;
      }

      .grid-container>div {
         border: 3px solid blue;
         color: white;
         background-color: #4d4dff;
         text-align: center;
         padding: 20px;
      }
   </style>
</head>

<body>
   <h2>
      CSS grid-template-rows property
   </h2>
   <h4>
      grid-template-rows: 25% 15% 25% 
      (3 rows are created and sizes are 25%,
      15% and 25% of the size of the container's
      width respectively)
   </h4>
   <div class="grid-container">
      <div>
         Item-1
      </div>
      <div>
         Item-2
      </div>
      <div>
         Item-3
      </div>
      <div>
         Item-4
      </div>
      <div>
         Item-5
      </div>
      <div>
         Item-6
      </div>
      <div>
         Item-7
      </div>
      <div>
         Item-8
      </div>
      <div>
         Item-9
      </div>
   </div>
</body>

</html>

支援的瀏覽器

屬性 Chrome Edge Firefox Safari Opera
grid-template-rows 57 16 52 10 44
css_properties_reference.htm
廣告