知識總結 HTML5布局之flex布局總結

2021-07-23 16:58:31 字數 2205 閱讀 3239

#一 布局幾種方式

1.靜態(自然)布局(沒有任何(float,position等)修飾的布局)

2.浮動布局(float)

3.定位布局(position)

4.彈性布局(flex)

5.柵格布局(就是把網頁的寬度分成固定的相同寬度,然後列出各種可能的組合,以便頁面在進行呈現時能夠進行快速的布局,通常12等分或24等分)

#彈性布局

概念:是css3的彈性盒子(flexible box)或flexbox,是一種布局方式,當頁面需要適應不同螢幕大小或裝置型別時,他會確保擁有恰當的布局方式.

#原理

彈性布局是通過調整其內元素的寬高,從而在任何顯示裝置對可用的顯示空間的最佳填充能力.

#名稱解釋

##軸(axis)

每個彈性框布局都包含兩個軸,彈性專案(子級元素)延其依次排列的的水平軸稱之為主軸(水平線),

垂直於主軸的稱之為側重(垂直線)

#尺寸(dimension)

根據彈性容器的主軸側軸,彈性專案的寬高,對應的主軸的稱之為主軸尺寸(寬),對應側軸的稱之為側軸尺寸(高)

#定義乙個彈性布局

display:flex;

值flex使彈性容器成為乙個塊級元素,定義在父級上

display:inline-flex;

值inline-flex使彈性容器成為行內元素.定義在父級上.

display:none;

注意:使用彈性布局後,子元素的float,clear和vertical-align將失效.

#flex屬性分類

##1.容器屬性(作用於父級上)

###a.flex-direction

這個屬性決定了主軸(水平)的方向(專案的排列方向)

###b.flex-wrap

預設情況下,專案排在一行,可以通過這個屬性設定來決定子級元素是否換行顯示

###c.flex-flow

該屬性是flex-direction和flex-wrap屬性的簡寫

###d.justity-content

定義了專案(子級)在主軸(水平)方向上的對齊方式

###e.align-items

定義了專案(子級元素)在交叉軸上的對齊方式

###f.align-content

定義了多根軸的對齊方式,如果只有一根軸線該屬性不起作用

##2.專案(子級)屬性(屬性寫在子級元素上)

###a.order

定義了專案(子級)的排列順序,數值越小排列越前,值可正可負

###b.flex-grow

定義了專案(子級元素)的放大比例,預設是0,如果空間不夠,該專案不放大

###c.flex-shrink

定義了專案的縮小比例,預設1,如果空間不夠,該專案自動縮小.

###d.flex-basis

該屬性會計算主軸是否有多餘空間

###e.flex

是flex-grow,flex-shrink和flex-basis的簡寫,也就是他們的復合寫法

###f.align-self

該屬性允許單個專案有與其他專案不一樣的對齊方式,預設值auto,表示父級元素的align-items屬性,沒如果沒有父級,則等同於stretch

#具體演示

一 容器屬性flex-direction屬性演示

###html**

flex-direction屬性

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

.box

row(預設值):主軸為水平方向,起點在左端。

row-reverse:主軸為水平方向,起點在右端。

column:主軸為垂直方向,起點在上沿。

column-reverse:主軸為垂直方向,起點在下沿。

##css樣式

.box1

.box1 li

#box1

#box2

#box3

#box4

#未完待續…

知識點滴 HTML5 布局總結

布局總結 1 像這樣的行內標記,定義它的margin top和margin bottom是無效的,除非你把它設定為塊狀元素才可以。display block 2 對於塊狀元素,你可以自由的使用外邊距來定義版式和元素之間的距離。類似 div 等等,3 無論什麼元素,一旦設定為是浮動顯示,就擁有了完整的...

HTML5 布局篇 總結

1 像這樣的行內標記,定義它的margin top和margin bottom是無效的,除非你把它設定為塊狀元素才可以。display block 2 對於塊狀元素,你可以自由的使用外邊距來定義版式和元素之間的距離。類似 div 等等,3 無論什麼元素,一旦設定為是浮動顯示,就擁有了完整的盒模型結構...

html5 伸縮布局

基本概念 1 主軸 flex容器的主軸主要用來配置flex專案,預設是水平方向 2 側軸 與主軸垂直的軸稱作側軸,預設是垂直方向的 3 方向 預設主軸從左向右,側軸預設從上到下 4 主軸和側軸並不是固定不變的,通過flex direction可以互換 display flex 給父盒子加flex屬性...