一 初識flex
- 開啓flex佈局的元素叫 flex container
flex container裏面的子元素叫做 flex items
- 開啓flex佈局(兩種)
display:flex
display:inline-flex
- flex模型有兩個軸 main axis(主軸)和 cross axis(側軸)這兩個軸的方向可以改變(通過flex-direction)
- flex items默認沿着main axis(主軸)方向排列
二 flex container上的CSS
1. flex-direction(決定main axis的方向)
flex-direction: row
flex-direction: row-reverse
flex-direction: column
flex-direction: column-reverse
2. justify-content(決定flex items 在main axis的對齊方式)
justify-content: flex-start
justify-content: flex-end
justify-content: space-between
justify-content: space-evenly
justify-content: space-around
3. align-content(決定flex items 在cross axis上的對齊方式)
align-content: stretch
align-content: normal
align-content: flex-start
align-content: flex-end
align-content: center
align-content: space-between
align-content: space-around
align-content: space-evenly
4. align-items(決定flex items在cross axis的對齊方式)
align-items: normal
align-items: stretch
align-items: flex-start
align-items: flex-end
align-items: center
align-items: baseline
5. flex-wrap(決定flex items 單行還是多行)
flex-wrap: nowrap
flex-wrap: wrap
flex-wrap: wrap-reverse
6. flex-flow(flex-direction和flex-wrap的縮寫,順序隨意)
flex-flow: row-reverse wrap
三 flex items上的CSS
1. order
order: 10
2. align-self(覆蓋align-items的設置)
align-self: normal
align-self: stretch
align-self: flex-start
align-self: flex-end
align-self: center
align-self: baseline
3. flex-grow(擴展main axis的剩餘間隙)
flex-grow: 2
flex-grow: 0.2
4. flex-shrink(收縮main axis的超出部分)
flex-grow: 2
flex-grow: 0.2
5. flex-basis(重新設置main axis方向上的base size)
flex-basis: 200px
5. flex(felx-grow/shrink/basis的縮寫,可指定1/2/3個值)
flex: 1
flex: 100px