網(wǎng)格布局實現(xiàn)居中布局
1. 前言
本小節(jié),我們將采用網(wǎng)格布局來實現(xiàn)居中布局的樣式。
網(wǎng)格其實就是最近比較火的 Grid 布局,原理就是把父元素分割成一個個的小格子。
然后子元素指定自己具體在那個格子上,有點類似于表格布局。
2. 實例代碼
通過網(wǎng)格布局實現(xiàn)移動端居中布局。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
/* 清除默認樣式 */
* { padding: 0; margin: 0; }
/* 令html和body全屏顯示, 并有一個灰色背景 */
html, body { height: 100%; background: gray; }
/* 中央盒子的直接父元素 */
body {
/* 令其變成網(wǎng)格布局 */
display: grid;
/* 令子元素居中 */
place-items: center;
}
.center {
/* 不用給寬高,但是可以給個內(nèi)邊距防止內(nèi)容與盒子過于貼合 */
padding: 10px;
/* 白色背景 */
background: white;
}
</style>
</head>
<body>
<div class="center">用內(nèi)容撐開盒子</div>
</body>
</html>
運行結(jié)果:
估計大多數(shù)人都不太熟悉這個網(wǎng)格布局,它有些類似于表格布局,但比表格布局更加強大。
如果同學們對Grid不是很熟悉可以參考 CSS3 Grid 布局。
還有很多人擔心 Grid 的兼容性:
其實可以看到絕大部分瀏覽器都已經(jīng)支持了,即使是最被吐槽的 IE 瀏覽器,也可以通過增加 -ms-前綴來進行支持。
例如:display: -ms-grid;
3. 小結(jié)
Grid 布局是近些年來逐漸興起的一種布局方式,它的功能十分強大。
用它可以輕松的實現(xiàn)響應(yīng)式布局,以前要很多行代碼很多行判斷的復(fù)雜布局,在掌握了 Grid 之后也都不在話下。