時間:2023-09-06 21:36:01 | 來源:網站運營
時間:2023-09-06 21:36:01 來源:網站運營
2022年不能再錯過 CSS 網格布局了:grid-template-columns
、grid-template-rows
和grid-template-areas
等屬性定義一個顯式網格。grid-template-columns
和 grid-template-rows
可以顯式定義網格軌道。不過在這一節(jié)中,我們主要和大家探討可運用于網格軌道尺寸設置的單位,尤其是深度探討了 CSS Grid 中自己獨有的單位 fr
。圖解CSS: Grid布局(Part3)在 CSS Grid 中可以顯式使用 grid-template-columns
和 grid-template-rows
可以顯式定義網格軌道。不過在這一節(jié)中,我們主要和大家探討可運用于網格軌道尺寸設置的單位,尤其是深度探討了 CSS Grid 中自己獨有的單位 fr
。grid-template-columns
和 grid-template-rows
除了可以使用長度單位(<length>
)、百分比單位(<percentage>
) 以及彈性因子單位(fr
)設置網格軌道尺寸之外,還可以使用一些關鍵詞(比如,none
、auto
、min-content
、max-content
、fit-content
和 fit-content()
)來設置網格軌道尺寸。其中min-content
、max-content
、fit-content
也被稱為使用內在尺寸來設置網格軌道尺寸。圖解CSS: Grid布局(Part4)在 grid-template-columns
和 grid-template-rows
除了可以使用長度單位(<length>
)、百分比單位(<percentage>
) 以及彈性因子單位(fr
)設置網格軌道尺寸之外,還可以使用一些關鍵詞(比如,none
、auto
、min-content
、max-content
、fit-content
和 fit-content()
)來設置網格軌道尺寸。其中min-content
、max-content
、fit-content
也被稱為使用內在尺寸來設置網格軌道尺寸。grid-template-columns
和 grid-template-rows
中除了使用固定長度值、動態(tài)值和一些關鍵詞來設置網格軌道的大?。?,使用外在尺寸和內在尺寸來設置網格軌道尺寸)。我們還可以在 CSS Grid 中使用一些函數(shù),比如 minmax(min, max)
、repeat()
以及 CSS 的比較函數(shù)(比如min()
、max()
和 clamp()
等函數(shù))設置網格軌道尺寸,甚至這些函數(shù)還可以相互嵌套。圖解CSS: Grid布局(Part5)grid-template-columns
和 grid-template-rows
中除了使用固定長度值、動態(tài)值和一些關鍵詞來設置網格軌道的大小(即,使用外在尺寸和內在尺寸來設置網格軌道尺寸)。我們還可以在 CSS Grid 中使用一些函數(shù),比如 minmax(min, max)
、repeat()
以及 CSS 的比較函數(shù)(比如min()
、max()
和 clamp()
等函數(shù))設置網格軌道尺寸,甚至這些函數(shù)還可以相互嵌套。grid-template-columns
、grid-template-rows
和 grid-template-areas
可以顯式定義一個顯式網格。除此之外,還可以使用 grid-auto-columns
、grid-auto-rows
和 grid-auto-flow
來定義一個隱式網格。圖解CSS: Grid布局(Part6)使用 grid-template-columns
、grid-template-rows
和 grid-template-areas
可以顯式定義一個顯式網格。除此之外,還可以使用 grid-auto-columns
、grid-auto-rows
和 grid-auto-flow
來定義一個隱式網格。grid-row
、grid-column
和 grid-area
等屬性可以明確地把網格項目放置在網格中的指定位置上。除此之外,CSS Grid 布局規(guī)范還包含了另外一組規(guī)則,用來約定未被明確指定位置的網格項目該如何放置。即使用 grid-auto-flow
來設置網格自動放置。圖解CSS: Grid布局(Part7)在 CSS Grid 布局中,在網格項目上使用 grid-row
、grid-column
和 grid-area
等屬性可以明確地把網格項目放置在網格中的指定位置上。除此之外,CSS Grid 布局規(guī)范還包含了另外一組規(guī)則,用來約定未被明確指定位置的網格項目該如何放置。即使用 grid-auto-flow
來設置網格自動放置。grid-template-columns
和 grid-template-rows
中顯式的在中括號[]
中給網格線指定名稱。前面提到過,CSS 網格系統(tǒng)中有顯式網格和隱式網格之分,同樣的,網格線也有顯式網格線和隱式網格線之分,位于顯式網格上的網格線被稱為顯式網格線,位于隱式網格上的網格線被稱為隱式網格線。而且在網格系統(tǒng)中,明確放置網格項目時離不開網格線,換句話說,網格線命名的好不好直接會影響我們網格項目放置。在這篇文章中將主要和大家探討網格線怎么命名?感興趣的請繼續(xù)往下閱讀。grid-template-columns
、grid-template-rows
、grid-template-areas
、grid-auto-columns
、grid-auto-rows
、grid-auto-flow
等屬性都會創(chuàng)建網格線,并且網格項目上的grid-column
、grid-row
和 grid-area
可以通過網格線來放置網格項目,而且在創(chuàng)建布局系統(tǒng)時還會帶來更多的可能性。在這一節(jié)中,我們將深入探討論在 CSS 網格布局中命名網格的各種方法,以及由此產生的一些有趣的可能性。grid-auto-rows
、grid-auto-columns
和grid-auto-flow
)之外還可以在網格項目是顯式使用 grid-row
、grid-column
和 grid-area
設置網格線名稱,來明確的放置網格項目。圖解CSS: Grid布局(Part9)CSS Grid 中除了可以自動放置網格項目(一般使用grid-auto-rows
、grid-auto-columns
和grid-auto-flow
)之外還可以在網格項目是顯式使用 grid-row
、grid-column
和 grid-area
設置網格線名稱,來明確的放置網格項目。grid-row-start
、grid-row-end
、grid-column-start
和 grid-column-end
指定網格線名稱,放置網格項目grid-row-start
、grid-row-end
、grid-column-start
和 grid-column-end
的簡寫屬性 grid-row
和 grid-column
指定網格線名稱,放置網格項目grid-area
指定網格名稱 或 指定grid-template-areas
定義的網格區(qū)域名稱,放置網格項目grid-row-start
、grid-row-end
、grid-column-start
、grid-column-end
或 grid-row
、grid-column
指定網格線名稱,并且使用 span
來指定合并的網格單元格。他們的結合來放置網格項目grid-row-start
、grid-row-end
、grid-column-start
、grid-column-end
(以及其簡寫屬性grid-row
、grid-column
)或 grid-area
中指定 grid-template-rows
、grid-template-columns
和 grid-template-areas
定義的網格線名稱,放置網格項目span
關鍵詞,放置網格項目grid-area
指定grid-template-areas
或 grid-template-rows
和grid-template-columns
創(chuàng)建的網格區(qū)域名稱,放置網格項目grid-row
、grid-column
和 grid-area
等屬性根據網格線名稱明確指定網格項目位置。這樣就可以讓網格項目相互重疊。換句話說,在 CSS Grid 中,可以使用下面這幾種方式讓網格項目相互重疊:圖解CSS: Grid布局(Part11)網格項目可以使用grid-row
、grid-column
和 grid-area
等屬性根據網格線名稱明確指定網格項目位置。這樣就可以讓網格項目相互重疊。換句話說,在 CSS Grid 中,可以使用下面這幾種方式讓網格項目相互重疊:position
為非static
的值就會觸發(fā)z-index
生效,也就是說,在網格項目重疊時,可以直接在網格項目上顯式設置z-index
來控制網格項目在z
軸的層級。margin
的關系(如何使用margin
來設置網格項目的對齊方式)。gap
屬性,即如何使用gap
來設置網格軌道之間的間距(俗稱網槽的大?。?br>padding-top
或padding-bottom
以及CSS 自定義屬性和calc()
函數(shù)如何實現(xiàn)網格項目的寬高比。圖解CSS: Grid布局(Part13)這一章節(jié)中主要和大家一起探討了網格項目的寬高比的設置,即 ef="https://www.w3cplus.com/css/css-aspect-ratio.html">CSS 的aspect-ratio 屬性在網格中的運用。另外,還介紹了padding-top
或padding-bottom
以及CSS 自定義屬性和calc()
函數(shù)如何實現(xiàn)網格項目的寬高比。subgrid
的使用情況、如何實現(xiàn)它的問題有很多討論,甚至還有一些關于是否需要它的辯論。很多討論都是圍繞著另外兩種可以處理許多與subgrid
相同問題的方法:嵌套網格 和 display: contents
。這篇文章由嵌套網格作為切入口,并深入闡述嵌套網格和subgrid
,即我們將了解哪些是相似的,哪些是subgrid
與嵌套網格區(qū)別?以及闡述在一些非常有效的情況下,子網格是真正需要的,而在另一些情況下,它并不是嚴格需要的,但會帶來一個更簡潔的解決方案。圖解CSS: Grid布局(Part15)一段時間以來,關于subgrid
的使用情況、如何實現(xiàn)它的問題有很多討論,甚至還有一些關于是否需要它的辯論。很多討論都是圍繞著另外兩種可以處理許多與subgrid
相同問題的方法:嵌套網格 和 display: contents
。這篇文章由嵌套網格作為切入口,并深入闡述嵌套網格和subgrid
,即我們將了解哪些是相似的,哪些是subgrid
與嵌套網格區(qū)別?以及闡述在一些非常有效的情況下,子網格是真正需要的,而在另一些情況下,它并不是嚴格需要的,但會帶來一個更簡潔的解決方案。subgrid
進入 CSS Grid 布局模塊的 Level 2 規(guī)范之前,嵌套網格、subgrid
和 display: contents
就有深度的討論,最終 subgrid
得到更多的支持,也最終成為規(guī)范中的一部分。也就是說,嵌套網格 和 display: contents
都可以實現(xiàn)類似 subgrid
的布局。那這個章節(jié)中,和大家來探討 display: contents
和 subgrid
有何差異?圖解CSS: Grid布局(Part16)subgrid
進入 CSS Grid 布局模塊的 Level 2 規(guī)范之前,嵌套網格、subgrid
和 display: contents
就有深度的討論,最終 subgrid
得到更多的支持,也最終成為規(guī)范中的一部分。也就是說,嵌套網格 和 display: contents
都可以實現(xiàn)類似 subgrid
的布局。那這個章節(jié)中,和大家來探討 display: contents
和 subgrid
有何差異?z-index
來控制網格項目在 z
軸上的層疊順序。也就是說,以往需要使用 CSS 的 position
的絕對定位(absolute
)來實現(xiàn)的布局,現(xiàn)在可以直接使用 CSS Grid 來解決。在這個案例中,我們主要來看如何使用 CSS Grid 實現(xiàn)元素疊加的布局效果。圖解CSS:Grid布局案例之構建重疊布局_CSS, Grid, 布局, Layout, Web布局系列, 會員專欄, 圖解CSS 教程_W3cplus在 CSS Grid 布局中,我們可以通過網格項目放置的方式,讓不同的元素重疊在一起,并且通過 CSS 的 z-index
來控制網格項目在 z
軸上的層疊順序。也就是說,以往需要使用 CSS 的 position
的絕對定位(absolute
)來實現(xiàn)的布局,現(xiàn)在可以直接使用 CSS Grid 來解決。在這個案例中,我們主要來看如何使用 CSS Grid 實現(xiàn)元素疊加的布局效果。關鍵詞:布局,錯過