移動布局之彈性布局

2022-08-12 04:54:11 字數 2157 閱讀 4952

flex是flexble box的縮寫,意為「彈性布局」,用來為盒狀模型提供最大的靈活性,任何乙個容器都可以指定為flex布局。

採用flex布局的元素,稱為flex容器(flex container),簡稱「容器」。它的所有子元素自動成為容器成員,稱為flex專案(flex item),簡稱」專案「。

flex布局的原理就是通過給父盒子新增flex屬性(display: flex),來控制子盒子的位置和排列方式。子容器可以橫向排列也可以縱向排列。

以下6個屬性是對父元素設定的:

下面對上述的6個屬性作一一介紹:

flex-direction:flex-direction屬性決定主軸的方向,即專案的排列方向。

注意:主軸和側軸是會變化的,就看flex-direction設定誰為主軸,剩下的就是側軸。而我們的子元素是跟著主軸來排列的。

屬性值說明

row預設值,從左到右

row-reverse

從右到左

column

從上到下

column-reverse

從下到上

justify-content:justify-content屬性定義了專案在主軸上的對齊方式。

注意:使用這個屬性之前一定要確定好主軸是哪個。

屬性值說明

flex-start

預設值,從頭部開始,如果主軸是x軸,則從左到右排列

flex-end

從尾部開始排列

center

在主軸居中對齊(如果主軸是x軸,則水平居中)

space-around

平分剩餘空間

space-between

先兩邊貼邊,再平分剩餘空間(重要)

flex-wrap:在flex布局中,預設的子元素是不換行的,專案都排在一條線上,如果裝不下,會縮小子元素的寬度。

屬性值說明

nowrap

預設值,不換行

wrap

換行align-items:該屬性是控制子項在側軸(預設是y軸)上的排列方式,在子項為單行的時候使用

屬性值說明

flex-start

預設值,從上到下

flex-end

從下到上

center

垂直居中(擠在一起居中)

stretch

拉伸align-content:設定子項在側軸上的排列方式,並且只能用於子項出現換行的情況(即多行顯示),在單行下是沒有效果的。

屬性值說明

flex-start

預設值,從側軸的頭部開始排列

flex-end

從側軸的尾部開始排列

center

在側軸中間顯示

space-around

子項在側軸平分剩餘空間

space-between

子項在側軸先分布在兩頭,再平分剩餘空間

stretch

設定子項元素高度平分父元素的高度

align-items和align-content的區別:

flex-flow:該屬性是flex-direction和flex-wrap屬性的復合屬性

flex-flow: row wrap;
flex布局子項常見屬性:

下面對上述的3個屬性作一一介紹:

flex:該屬性定義子專案分配剩餘空間,用flex來表示佔多少份

.item
align-self:該屬性允許單個專案有與其他專案不一樣的對齊方式,可以覆蓋align-items屬性。

預設值為auto,表示繼承父元素的align-items屬性,如果沒有父元素,則等同於stretch。

span:nth-child(2)
下面介紹乙個常見的flex布局思路:

CSS布局之彈性布局

flex 彈性布局 是一種響應式布局,能自動伸縮盒模型達到自適應的效果。彈性布局由彈性容器 flex container 和彈性專案 flex item 組成。在彈性容器中,水平方向稱為主軸 main axis 起點main start,終點main end 垂直方向稱為縱軸 cross axis ...

css布局之彈性布局flex

作用 彈性布局flex能按照我們的設定自動計算各子元素之間的間距並將之布局好,而不需要像定位那樣手動計算布局。彈性布局是定義在乙個父容器中,加上display flex樣式使父容器的布局方式成為彈性布局。父容器中的子元素都會成為行內塊,預設所有子元素橫向排列,子元素的float clear和vert...

移動端 彈性盒子布局

1.基本概念 採用flex布局的元素,稱為flex容器 flex container 簡稱 容器 它的所有子元素自動成為容器成員,稱為flex專案 flex item 簡稱 專案 容器預設存在兩根軸 水平的主軸 main axis 和垂直的縱軸 cross axis 主軸的開始位置 與邊框的交叉點 ...