一旦一个容器赋予了display:flex
属性,将会有以下特点:
vertical-align
设置垂直对齐方式。目前互联网上关于flex流动布局的文章很少,搜索关于flex的文章,大部分还介绍的是旧的知识点,显然已经不符合当前的w3c标准了,要想了解flex的相关内容,可以参考http://qianduanblog.com/2549.html。并且,支持flex的浏览器也很少,只有谷歌浏览器完全支持,其他低版本的webkit不完全支持,火狐也不完全支持(不支持flex-wrap),ie10及以上部分支持。
flex布局非常适宜当前的移动设备和大屏幕浏览器网页开发非常的便捷,是未来网页开发布局设计的方向,是一个未来技术。flex布局能够编写代码小,各种宽度、高度、位置都由浏览器自身按照既定规则完成适配,跨平台无障碍阅读体验。
flex-grow
(即.flex-grow-0
.flex-grow-1
类),火狐24不支持flex-wrap
(即.flex-wrap
类)。.flex-grow-0
.flex-grow-1
。.flex-row
.flex-row-reverse
.flex-col
.flex-col-reverse
.flex-wrap
.flex-row-start
.flex-row-center
.flex-row-end
.flex-row-around
.flex-row-between
.flex-rows-start
.flex-rows-center
.flex-rows-end
.flex-rows-around
.flex-rows-between
.flex-col-start
.flex-col-center
.flex-col-end
.flex-col-stretch
.flex-col
类似,只是其优先级更高)
.flex-self-start
.flex-self-center
.flex-self-end
.flex-self-stretch
.flex-grow-0
.flex-grow-1
下面依次说说如何使用该样式类。
flex样式类,在描述行和列的时候,是以主轴为水平、侧轴以垂直方向为例的(参考:http://qianduanblog.com/2549.html#1%E3%80%81%E6%B5%81%E5%8A%A8%E5%B8%83%E5%B1%80),此时行即为水平方向、列即为垂直方向;但如果主轴在垂直方向、侧轴在水平方向时,行即为垂直方向、列即为水平方向。因在实际情况中,前者使用的概率最大,所以采用以行描述主轴在水平方向、列描述侧轴在垂直方向,更为直观。
使用.flex
样式类即可对容器进行flex初始化。如下图:
demo:http://demo.qianduanblog.com/2881/1.html
其HTML代码如:
.flex-row
(默认):flex行布局,即主轴在水平方向、侧轴在垂直方向。.flex-row-reverse
:flex行反布局,与.flex-row
类似,更改水平方向从右往左。.flex-col
:flex列布局,即主轴在垂直方向、侧轴在水平方向。.flex-col-reverse
:flex行反布局,与.flex-col
类似,更改垂直方向从下往上。.flex-wrap
:换行布局,即主轴在水平方向时,主轴可以折行,类似于现在的文字换行;反之,主轴在垂直方向,主轴可以折列,类似于古代的文字换列,在使用多列布局时,需设置容器的高度。如图:
demo:http://demo.qianduanblog.com/2881/2.html
主轴折行示例:
同理,折列也是相同情况,demo:http://demo.qianduanblog.com/2881/3.html。
.flex-start
(默认):居左排列。.flex-center
:居中排列。.flex-end
:居右排列。.flex-around
:分散排列。.flex-between
:分开排列。如图:
demo:http://demo.qianduanblog.com/2881/4.html。
需设置容器的固定高度。
.flex-rows-start
(默认):多行居顶对齐。.flex-rows-center
:多行居中对齐。.flex-rows-end
:多行居底对齐。.flex-rows-around
:多行分散对齐。.flex-rows-between
:多行分开对齐。如图:
详细demo:http://demo.qianduanblog.com/2881/5.html。
.flex-col-start
(默认):顶部对齐。.flex-col-center
:居中对齐。.flex-col-end
:居底对齐。.flex-col-stretch
:拉伸对齐。如图:
详细demo:http://demo.qianduanblog.com/2881/6.html。
该样式作用于flex项目,与.flex-col-*
相同,表示垂直方向的对齐方式,只是其只作用于单个flex项目,优先级比它高。详细:
.flex-self-start
(默认):项目垂直方向居顶对齐。.flex-self-center
:项目垂直方向居中对齐。.flex-self-end
:项目垂直方向居中对齐。.flex-self-stretch
:项目垂直方向拉伸对齐。如图:
详细demo:http://demo.qianduanblog.com/2881/7.html。
该样式作用于flex项目。
.flex-grow-0
(默认):剩余空间分配占比为0。.flex-grow-1
:剩余空间分配占比为1。如图:
详细demo:http://demo.qianduanblog.com/2881/8.html
原文链接:http://qianduanblog.com/2881.html
css3 flex流动自适应响应式布局样式类,布布扣,bubuko.com
原文地址:http://www.cnblogs.com/sunshq/p/3756934.html