您現在的位置是:首頁 > 網路遊戲首頁網路遊戲

「融職教育」Web前端學習 第2章 網頁重構16 grid佈局

簡介grid佈局基本概念grid容器的水平區域成為行(row),垂直區域成為列(column),行與列之間的較差與是單元格(cell),劃分網格的線成為網格線(gird line),瞭解了這些基本概念之後,就可以開始用相應的css屬性設定gri

grid2如何顯示藍量

一、grid佈局概述

grid佈局與flex佈局對比

grid佈局可以為網頁提供更強大的佈局功能,它與flex佈局的區別是。

flex佈局為一維佈局,一般一行或一列的佈局使用flex佈局。

grid佈局為二維佈局,同時需要兼顧行與列的佈局,可以使用gird佈局。

如果不考慮相容問題,flex佈局和grid佈局可以很好地替代浮動佈局。

grid佈局基本概念

grid容器的水平區域成為行(row),垂直區域成為列(column),行與列之間的較差與是單元格(cell),劃分網格的線成為網格線(gird line),瞭解了這些基本概念之後,就可以開始用相應的css屬性設定grid容器中的專案了。

二、grid容器

設定gird容器

透過下面程式碼可以將一個容器設定成為一個grid容器。

1 。container{

2 display:grid;

3 }

gird容器內部的元素稱為grid容器的專案,grid專案的float屬性會失效,透過grid容器的進一步設定,可以讓內部的專案按要求排列。

grid-template-columns屬性與grid-template-rows屬性

grid-template-columns可以設定gird容器中的專案有多少列,並指定列的寬度,例項程式碼如下所示

1

2

3

4

5

6

7

8

9

。container{

display:grid;

grid-template-columns: 100px 100px 100px;

}

。item{

border:1px solid red;

}

透過上面的樣式設定,可以將grid容器設定成為三列,並將每一列的寬度設定為100px。

除了設定制定尺寸的畫素,還可以透過fr單位設定列寬度的比例。修改上面的grid容器樣式如下所示

1 。container{

2 display:grid;

3 grid-template-columns: 1fr 1fr 2fr;

4 }

可以看到整個gird容器的列被4等分,其中第一列和第二列佔1份(1fr),第三列佔2份(2fr)。

gird-template-rows屬性可以設定gird容器中的專案有多少行,並指定行的寬度,例項程式碼如下所示:

。container{

display:grid;

grid-template-columns: 100px 100px 100px;

grid-template-rows: 100px 100px 100px;

}

透過上面的樣式,可以將grid容器設定成為一個三行三列的佈局,並且每一個單元格都為100px。

grid-column-gap屬性與grid-row-gap屬性

grid-column-gap屬性與grid-row-gap屬性可以為grid容器的航宇列之間設定間距,示例程式碼如下所示:

。container {

display: grid;

grid-template-columns: 100px 100px 100px;

grid-template-rows: 100px 100px 100px;

grid-row-gap: 20px;

grid-column-gap: 30px;

}

透過上面的樣式,可以將行(row)之間的間距設定為20畫素,將列(column)之間的間距設定為30畫素。

justify-items屬性與align-items屬性

justify-items屬性與align-items屬性可以設定單元的水平位置和垂直位置,例項程式碼如下所示:

。container {

display: grid;

grid-template-columns: 100px 100px 100px;

grid-template-rows: 100px 100px 100px;

/* 在單元格內水平居中 */

justify-items: center;

/* 在單元格記憶體執居中 */

align-items: center;

}

預設的情況下,grid容器單元格內的塊元素會適應單元的的寬度和高度,設定justify-items後,單元格內的元素會適應自身內容的寬度,設定align-items後,單元格內的元素會使用內容的高度。

將justify-items和align-items兩個屬性設定為center,可以將單元格內的內容垂直水平居中顯示。

justify-content屬性與aling-content屬性

透過justify-content屬性與aling-content屬性可以設定整個內容區域在容器裡面的水平位置和垂直位置。

三、grid專案

justify-self屬性與align-self屬性

justify-self屬性可以設定單元格內容的水平位置。

align-self屬性可以設定單元內容的垂直位置。

grid-column-start屬性與grid-column-end屬性

指定左右邊框垂直網格線

grid-row-start屬性與grid-row-end屬性

指定上下邊框水平網格線

四、課後練習

使用grid佈局實現一個聖盃佈局。

結合grid佈局和flex佈局實現融職教育的首頁。

「融職教育」Web前端學習 第2章 網頁重構16 grid佈局

Top