微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

认识flexbox布局

对于css原有布局很多都是基于float和display:table这样的布局,但是新一代CSS3问世后出现了现在风靡的flex布局方案,其布局理解大大的迎合了现在前端开发中的布局需求!

什么是Flex布局?

Flex 是Flexible Box Model的简称,可以直观的理解成“弹性布局”,是对盒子模型的一种灵活表现。
可以动态修改子元素的宽度和高度!

参考W3Cschool教程解释!
图片描述

兼容性支持
图片描述

-------------------------------------------开始学习!-------------------------------------------------------------

弹性盒子的父元素称为  弹性容器  flex container
弹性盒子的子元素称为  弹性子元素  flex item
还有两个概念即主轴、侧轴   如下图:
(子元素沿着主轴依次排列,侧轴与主轴相互垂直)
clipboard.png

弹性容器属性

图片描述

fle-direction:row|row-reverse|column|column-reverse
/*设置主轴方向确定弹性盒子子元素的排列方向*/

row(认值)
图片描述

row-reverse
图片描述

column
图片描述

column-reverse
图片描述


flex-wrap:Nowrap|wrap|wrap-reverse
/*当子元素超出容器范围时是否换行*/


Nowrap(认值)
图片描述

warp
图片描述

wrap-reverse
图片描述


flex-flow:[flex-direction]||[flex-wrap]
/*设置弹性子元素排列方式*/
justify-content:flex-start|flex-end|center|space-between|space-around
/*弹性盒子内子元素在主轴上的对齐方式*/

flex-start(紧贴开始侧)
图片描述

flex-end(紧贴结束侧)
图片描述

center(居中对齐)
图片描述

space-beteen(两端对齐两次紧贴)
图片描述

space-around(均匀分布两侧有距离,左侧距离是中间距离的0.5倍)

图片描述

align-items:flex-star|flex-end|center|baseline|stretch
/*设置弹性盒子子元素在侧轴的对齐方式,与justify-content属性类似 */ 

stretch(认、高度自动延伸)
图片描述

flex-star(从侧轴开始)
图片描述

flex-end(从侧轴结束)
图片描述

baseline(元素内容基线对齐)
图片描述

center(居中对齐,侧轴中部)

图片描述

align-content:flex-start|flex-end|center|space-between|space-around|stretch
/*侧轴有空白且有多行时,设置弹性盒子元素在侧轴上的对齐方式*/

flex-start(元素多个且换行)
图片描述

flex-end
图片描述

center
图片描述

space-between
图片描述

space-around
图片描述

stretch(高度铺满屏幕)
图片描述


弹性盒子-子元素属性

order:子元素排列顺序,数值小的排在前面,可以为负值(子元素上设置)
flex-grow:设置子元素的扩展比例,不允许负值,认为0(元素扩展)
flex-shrink:设置子元素的收缩比例,不允许负值,认为1(宽度收缩) flex-basis:弹性子元素的收缩基准值,不允许负值
flex-none:none:复合属性设置弹性子元素的分配空间
align-self:auto|flex-start|flex-end|center|baseline|srtech
单独设置弹性子元素在侧轴上的对齐方式,与align-items相同

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐