摘要:設為布局以后,子元素的和屬性將失效。二基本概念采用布局的元素,稱為容器,簡稱容器。它的所有子元素自動成為容器成員,稱為項目,簡稱項目。如果項目只有一根軸線,該屬性不起作用。四項目的屬性注項目屬性的全面理解較為復雜,可以參考文章
一、Flex布局-前言
Flex是Flexible Box的縮寫,意為”彈性布局”,用來為盒狀模型提供最大的靈活性,旨在提供一個更有效地布局、對齊方式,并且能夠使容器中的子元素大小未知或動態變化情況下仍然能夠分配好子元素之間的空間。
Flex 布局的主要思想是使父容器能夠調節子元素的寬度/高度(和排列順序),從而能夠最好地填充可用空間(主要是為了適應所有類型的顯示設備和屏幕尺寸)。flex布容器能夠放大子元素使之盡可能填充可用空間,也可以收縮子元素使之不溢出。
最重要的是,flexbox布局與方向無關,不同于常規布局(基于垂直的塊(block)和基于水平的內聯(inline))。 雖然傳統布局適用于頁面,但它們對于大型或復雜的應用程序布局來說缺乏靈活性(特別是在改變方向,調整大小,拉伸,收縮等方面)。
注:
Flexbox布局最適合應用程序的組件和小規模布局,而 Gird 布局則適用于較大規模的布局。
設為Flex布局以后,子元素的float、clear和vertical-align屬性將失效。
二、 基本概念采用 Flex 布局的元素,稱為 Flex 容器(flex container),簡稱"容器"。它的所有子元素自動成為容器成員,稱為 Flex 項目(flex item),簡稱"項目"。
三、容器的屬性 display:flex; flex-direction justify-contentspace-around 和 space-between 這兩個值的區別不能很直觀的理解。
space-between 是兩端對齊,使每個矩形子元素(flex項)之間的間隔是相等的,但兩端的矩形子元素(flex項)不會和容器之間產生間隔。
space-around 則會在每個矩形子元素(flex項)的兩邊產生一個相同大小的間隔,也就是說兩端的矩形子元素(flex項)和容器之間的間隔大小正好是兩個矩形子元素(flex項)之間間隔大小的一半(每個矩形子元素產生的間隔不會重疊,所以間隔變成兩倍)。
align-items(注意 對于 align-items: stretch 來說,必須將每一個矩形子元素(flex項)的高度設置為 auto,否則 height 屬性將會覆蓋該 stretch)
對于 align-items: baseline 來說,要注意如果去掉段落標簽或者沒內容,矩形子元素(flex項)就會按照每個矩形的底部對齊,如下圖所示:
為了更好地演示主軸和交叉軸的區別,讓我們結合 justify-content和align-items,看看在 flex-direction 兩個不同屬性值的作用下,軸心有什么不同:
align-contentalign-content屬性定義了多根軸線的對齊方式。如果項目只有一根軸線,該屬性不起作用。
四、項目的屬性
注:項目屬性的全面理解較為復雜,可以參考文章:https://www.html.cn/archives/...
https://www.html.cn/archives/...
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/117396.html
摘要:很久沒有寫博客了,這里把之前學習布局的一篇筆記整理了一下。其在文檔流中的直接子元素將成為。子元素在容器內排列的方向稱為主軸,跟主軸垂直的方向稱為輔軸。 很久沒有寫博客了,這里把之前學習 flex 布局的一篇筆記整理了一下。發布到博客上。趕一個五月的末班車吧。還是得堅持啊!! flex 彈性布局FlexBox 可控制子元素: 水平或垂直排成一行 控制子元素的對齊方式 控制子元素的高度/...
摘要:很久沒有寫博客了,這里把之前學習布局的一篇筆記整理了一下。其在文檔流中的直接子元素將成為。子元素在容器內排列的方向稱為主軸,跟主軸垂直的方向稱為輔軸。 很久沒有寫博客了,這里把之前學習 flex 布局的一篇筆記整理了一下。發布到博客上。趕一個五月的末班車吧。還是得堅持啊!! flex 彈性布局FlexBox 可控制子元素: 水平或垂直排成一行 控制子元素的對齊方式 控制子元素的高度/...
摘要:如果項目只有一根軸線,該屬性不起作用。后兩個屬性可選。彈性比為的子代占據父代框的空間是彈性比為的同級屬性的兩倍。其默認值為,也就是不具有彈性。此元素會根據上下文作為塊級元素或內聯元素顯示柵格模型,類似柵格模型,類似轉自屬性詳解作者 display的所有屬性 {/* CSS 1 */ display: none; display: inline; display: block; disp...
閱讀 919·2023-04-25 23:40
閱讀 3706·2021-11-22 15:22
閱讀 3541·2021-10-09 09:44
閱讀 3399·2021-09-23 11:52
閱讀 1251·2021-09-22 15:43
閱讀 780·2021-09-10 10:51
閱讀 2201·2021-09-06 15:02
閱讀 3185·2021-09-06 15:02