亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Grid布局——頁面布局如此簡單

Scorpion / 1948人閱讀

摘要:網(wǎng)格單元格被劃分之后每一個(gè)格子就是單元格,也是布局的最小單位。網(wǎng)格區(qū)域若干個(gè)單元格拼接而成的區(qū)域。網(wǎng)格間隙單元格與單元格之間的距離,可以垂直也可以水平。

前言

CSS網(wǎng)格布局用于將頁面分割成數(shù)個(gè)主要區(qū)域,或者用來定義組件內(nèi)部元素間大小、位置和圖層之間的關(guān)系。像表格一樣,網(wǎng)格布局讓我們能夠按行或列來對(duì)齊元素。 但是,使用CSS網(wǎng)格可能還是比CSS表格更容易布局。 例如,網(wǎng)格容器的子元素可以自己定位,以便它們像CSS定位的元素一樣,真正的有重疊和層次。

介紹

gird布局是一種基于二維的網(wǎng)格布局,與flex和普通的浮動(dòng)布局相比,他最大的優(yōu)勢在于不取決dom節(jié)點(diǎn)的結(jié)構(gòu),而是直接把整個(gè)頁面劃分為多個(gè)格子,繼而進(jìn)行填充。

提供能力

①二維布局,提供橫、豎方向布局,與table相似
②可設(shè)置具體的行數(shù)、列數(shù),且可設(shè)置每行、每列的大小,提供多種的彈性大小控制屬性
③可定義每個(gè)格子間的間隔(橫豎)
④可設(shè)置元素的對(duì)齊方式(基于元素所在單元格),批量控制,具體某個(gè)子元素控制
⑤可讓元素填充到指定的格子(某行、某列,跨格子),此功能可以對(duì)元素進(jìn)行任意的布局,而無需修改html結(jié)構(gòu)

兼容性

在開發(fā)之前,你得先了解其兼容性??傮w來說,兼容性還是不夠全面,但如果一些公司用于內(nèi)部系統(tǒng)開發(fā),grid布局將會(huì)是一個(gè)不錯(cuò)的選擇。

基本概念 Grid line(網(wǎng)格線)

用于將整體劃分為每一個(gè)各自的線,可以水平(row grid lines),也可以是垂直的(column grid lines),如下圖中的紅線藍(lán)線。

Grid cell(網(wǎng)格單元格)

被劃分之后每一個(gè)格子就是單元格,也是gird布局的最小單位。

Grid area(網(wǎng)格區(qū)域)

若干個(gè)單元格拼接而成的區(qū)域。

Grid gap(網(wǎng)格間隙)

單元格與單元格之間的距離,可以垂直也可以水平。

容器屬性(container)

以下圖片來源:http://grid.malven.co/

display(啟動(dòng)該布局)

grid-template(網(wǎng)格模板)

用于定義 grid columns, rows 和areas。

grid-gap(單元格間隙)

justify-items

用于定義主軸(水平)對(duì)齊方式

align-items

用于定于副軸(垂直)對(duì)齊方式

justify-content

用于定于主軸(水平)上多跟軸線的對(duì)齊方式

align-content

用于定于副軸(垂直)上多跟軸線的對(duì)齊方式

grid-auto-flow

用于定義單元格的自動(dòng)遍歷順序

children(組件)

以下圖片來源:http://grid.malven.co/

grid-column

用于控制該組件在水平方向上占多少個(gè)格

grid-row

用于控制該組件在垂直方向上占多少個(gè)格

grid-row + grid-column

合并控制組件在垂直水平方向上各占多少個(gè)格

justify-self

用于定義該組件在主軸(水平)方向上內(nèi)容的對(duì)齊方式

align-self

用于定義該組件在副軸(垂直)方向上內(nèi)容的對(duì)齊方式

實(shí)際例子

如何在不改變dom節(jié)點(diǎn)結(jié)構(gòu)的情況下,實(shí)現(xiàn)如下功能:在屏幕不同分辨率的情況下,頁面中的組件自動(dòng)地移位。
①電腦:寬度大于1200px,布局如下:

②平板:寬度大于992px,小于1200px,布局如下:

③手機(jī):寬度小于992px,布局如下:

具體實(shí)現(xiàn)

代碼來源,https://github.com/TheWalking...

html代碼
header
subtitle
left
middle
right-top
right-middle
right-bottom
css代碼
.container{
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 10px;
        grid-auto-rows: minmax(50px, auto);
    }
    .container div{
        background-color: rgba(189, 249, 255, 1);
        border: 2px solid rgb(77, 170, 179, 1);
        border-radius: 5px;
        text-align: center;
        line-height: 50px;
    }

    @media only screen and (min-width: 768px) {
        .header{
            grid-column: 1;
            grid-row: 1;
        }
        .subtitle{
            grid-column: 1;
            grid-row: 2;
        }
        .left{
            grid-column: 1;
            grid-row: 4 / 7;
        }
        .middle{
            grid-column: 1;
            grid-row: 8 / 11;
        }
        .right-top{
            grid-column: 1;
            grid-row: 3;
        }
        .right-middle{
            grid-column: 1;
            grid-row: 7;
        }
        .right-bottom{
            grid-column: 1;
            grid-row: 11;
        }
        .footer{
            grid-column: 1;
            grid-row: 12;
        }
    } 

    @media only screen and (min-width: 992px) {
        .header{
            grid-column: 1 / 3;
            grid-row: 1;
        }
        .subtitle{
            grid-column: 1 / 3;
            grid-row: 2;
        }
        .left{
            grid-column: 1;
            grid-row: 4 / 7;
        }
        .middle{
            grid-column: 2;
            grid-row: 4 / 7;
        }
        .right-top{
            grid-column: 1 / 3;
            grid-row: 3;
        }
        .right-middle{
            grid-column: 1;
            grid-row: 7;
        }
        .right-bottom{
            grid-column: 2;
            grid-row: 7;
        }
        .footer{
            grid-column: 1 / 3;
            grid-row: 8;
        }
    } 

    @media only screen and (min-width: 1200px) {
        .header{
            grid-column: 1 / 4;
            grid-row: 1;
        }
        .subtitle{
            grid-column: 1 / 4;
            grid-row: 2;
        }
        .left{
            grid-column: 1;
            grid-row: 3 / 6;
        }
        .middle{
            grid-column: 2;
            grid-row: 3 / 6;
        }
        .right-top{
            grid-column: 3;
            grid-row: 3;
        }
        .right-middle{
            grid-column: 3;
            grid-row: 4;
        }
        .right-bottom{
            grid-column: 3;
            grid-row: 5;
        }
        .footer{
            grid-column: 1 / 4;
            grid-row: 6;
        }
    }

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/117156.html

相關(guān)文章

  • css布局的各種FC簡單介紹:BFC,IFC,GFC,F(xiàn)FC

    摘要:完整的說法是屬于同一個(gè)的倆個(gè)相鄰的的會(huì)發(fā)生重疊,與方向無關(guān)。元素會(huì)位于與與之間,使得寬度縮短。簡單的說,有了之后,布局不再局限于單個(gè)維度了。 什么是FC? Formatting Context,格式化上下文,指頁面中一個(gè)渲染區(qū)域,擁有一套渲染規(guī)則,它決定了其子元素如何定位,以及與其他元素的相互關(guān)系和作用。 BFC 什么是BFC Block Formatting Context,塊級(jí)格式...

    mindwind 評(píng)論0 收藏0
  • css布局的各種FC簡單介紹:BFC,IFC,GFC,F(xiàn)FC

    摘要:完整的說法是屬于同一個(gè)的倆個(gè)相鄰的的會(huì)發(fā)生重疊,與方向無關(guān)。元素會(huì)位于與與之間,使得寬度縮短。簡單的說,有了之后,布局不再局限于單個(gè)維度了。 什么是FC? Formatting Context,格式化上下文,指頁面中一個(gè)渲染區(qū)域,擁有一套渲染規(guī)則,它決定了其子元素如何定位,以及與其他元素的相互關(guān)系和作用。 BFC 什么是BFC Block Formatting Context,塊級(jí)格式...

    付永剛 評(píng)論0 收藏0
  • 布局看css基礎(chǔ)

    摘要:布局學(xué)習(xí)的主要目的是為了記住各種屬性么,最重要的是理解的定位機(jī)制與盒子模型。它是一個(gè)獨(dú)立的渲染區(qū)域,只有參與,它規(guī)定了內(nèi)部的如何布局,并且與這個(gè)區(qū)域外部毫不相干。 css布局 學(xué)習(xí)css的主要目的是為了記住各種屬性么?NO,最重要的是理解css的定位機(jī)制與盒子模型。 接下來,從布局的角度來學(xué)習(xí)css的定位機(jī)制和盒子模型,學(xué)習(xí)之前還是先來提幾個(gè)問題 1.進(jìn)行css布局前為什么要學(xué)習(xí)定位...

    thekingisalwaysluc 評(píng)論0 收藏0
  • HTML-CSS

    摘要:但是,從字體上來說雪碧圖制作,使用以及相關(guān),圖文。由于采用了編譯,所以能夠保證在瀏覽器不支持標(biāo)準(zhǔn)布局的情況下,回滾到舊版本的,保證移動(dòng)設(shè)備中能呈現(xiàn)出一樣的布局效果。我不想陷入和的紛爭,但是有一件事是確定的極大的提升了移動(dòng)端 一勞永逸的搞定 flex 布局 尋根溯源話布局 一切都始于這樣一個(gè)問題:怎樣通過 CSS 簡單而優(yōu)雅的實(shí)現(xiàn)水平、垂直同時(shí)居中。記得剛開始學(xué)習(xí) CSS 的時(shí)候,看到 ...

    xiaokai 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<