Flex布局自记

一、Flex容器的属性

设置 display:flex 的元素称为 Flex容器,容器的所有子元素称为 Flex项目

注意:设置为flex布局后,子元素的 float 、 clear 和 vertical-align 属性将失效

容器的6个属性:

flex-direction // 决定主轴的方向
    row (默认) 水平方向,起点在左端
    row-reverse 水平方向,起点在右端
    column 垂直方向,起点在上沿
    column-reverse 垂直方向,起点在下沿
    
flex-wrap // 是否换行
    nowrap (默认) 不换行
    wrap 换行,新行的元素在下面
    wrap-reverse 换行,新行的元素在上面
    
flex-flow // 是 flex-direction 和 flex-wrap 的组合简写形式
    row nowrap (默认) 参考 flex-direction 和 flex-wrap 的属性设置
    
justify-content // 定义Flex项目在主轴上的对齐方式
    flex-start (默认) 左对齐
    flex-end 右对齐
    center 居中对齐
    space-between 两端对齐,项目之间的间隔相等
    space-around 每个项目两侧的间隔相等 (项目之间的间隔比项目与边框的间隔大一倍)
    space-evenly 每个项目两侧的间隔相等 (项目之间的间隔与项目与边框的间隔也相等)

align-items // 定义Flex项目在交叉轴上的对齐方式
    stretch (默认) 如项目未设置高度或设为auto,将占满整个容器的高度
    flex-start 交叉轴的起点对齐
    flex-end 交叉轴的终点对齐
    center 交叉轴的中点对齐
    baseline 项目的第一行文字的基线对齐
    
align-content // 定义多根轴线的对齐方式,如果项目只有一根轴线,该属性不起作用
    stretch (默认) 如项目未设置高度或设为auto,将占满整个容器的高度
    flex-start 交叉轴的起点对齐
    flex-end 交叉轴的终点对齐
    center 交叉轴的中点对齐
    space-between 与交叉轴两端对齐,轴线之间的间隔平均分布
    space-around 每根轴线两侧的间隔都相等。所以,轴线之间的间隔比轴线与边框的间隔大一倍

二、Flex项目的属性

项目的6个属性:

order // 定义项目的排列顺序,数值越小排列越靠前,默认为0,负值有效

flex-grow // 定义项目放大比例,默认为0
    // 如果所有项目都定义为1,则等分剩余空间
    
flex-shrink // 定义项目缩小比例,默认为1,复制无效
    // 如果所有项目都定义为1,空间不足时都将等比例缩小
    // 如果一个项目定义为0,其余为1,空间不足时前者也不缩小
    
flex-basis // 定义在分配多余空间之前,项目占据的主轴空间,默认为auto
    // 可以设为跟width或height属性一样的值(比如350px),则项目将占据固定空间
    
flex // 属性是 flex-grow, flex-shrink 和 flex-basis 的简写
    // 默认为 0 1 auto
    
align-self // 属性允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性
    // 默认为 auto,表示继承父元素的align-items属性,如果没有父元素,则等同于stretch
    // 该属性可能取6个值,除了auto,其他都与align-items属性完全一致

详细参考阮一峰老师的博文:Flex 布局教程:语法篇 - 阮一峰的网络日志

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值