zoukankan      html  css  js  c++  java
  • Flex布局(弹性盒子布局)

    Flex模型

    A6jWHs.png
    元素表现为 flex 框时,它们沿着两个轴来布局:

    • 主轴(main axis)是沿着 flex 元素放置的方向延伸的轴(比如页面上的横向的行、纵向的列)。该轴的开始和结束被称为 main start 和 main end。
    • 交叉轴(cross axis)是垂直于 flex 元素放置方向的轴。该轴的开始和结束被称为 cross start 和 cross end。
    • 设置了 display: flex 的父元素被称之为 flex 容器(flex container).container
    • 在 flex 容器中的弹性盒子元素被称之为 flex 项(flex item).item

    一、flex container属性

    1. display
      给flex容器设置display属性
    .container{
    	display:flex	|	inline-flex
    }
    
    1. flex-direction
      设置主轴的方位和方向。
    .container {
        flex-direction: row(default) | row-reverse | column | column-reverse;
    }
    
    1. flex-wrap
      设置换行
    .container {
        flex-wrap: nowrap(default) | wrap | wrap-reverse;
    }
    
    1. flex-flow
      集合属性,同时定义flex-direction和flex-wrap。
    .container {
        flex-flow: row-reverse wrap-reverse;
    }
    
    1. justify-content
      设置行内的项目如何水平对齐
    .container {
        justify-content: flex-start(default) | flex-end | center | space-between | space-around | space-evenly;
    }
    
    1. align-items
      设置行内的项目如何垂直对齐。
    .container {
        align-items: stretch(default) | flex-start | flex-end | center | baseline;
    }
    
    1. align-content
      如果容器的交叉轴方向有富余空间,设置每行应该如何垂直对齐。
    .container {
        align-content: stretch(default) | flex-start | flex-end | center | space-between | space-around | space-evenly;
    }
    

    二、flex item属性

    1. order
      设置弹性项目在布局时的顺序。
    .item {
        order: <integer>;
    }
    
    • 默认值是0
    • order 值大的 flex 项比 order 值小的在显示顺序中更靠后。
    1. flex-grow
      设置flex项怎么瓜分行内的富余空间。定义flex项(flex item)的拉伸因子。
    .item {
        flex-grow: <number>; 
    }
    
    • 默认值是0。
    • 按照总份数瓜分富余空间。
    1. flex-shrink
      设置flex项怎么承担行内的负债空间。定义flex项(flex item)的收缩规则。
    .item {
        flex-shrink: <number>; 
    }
    
    • 默认值是1。
    • 按照总份数承担行内的负债空间。
    1. flex-basis
      设置了 flex 元素在主轴方向上的初始大小。它是width属性的替代品,优先级比width高。
    .item {
        flex-basis: <'width'>;
    }
    
    • 默认值是auto
    • 依赖flex项目的content
    1. flex
      一个集合属性,可以同时设置flex-grow、flex-shrink和flex-basis。
    .item {
        flex: <'flex-grow'> | <'flex-grow'> <'flex-shrink'> <'flex-basis'>;
    }
    
    1. align-self
      设置弹性项目自身在行内的垂直对齐方式。
    .item {
        align-self: auto(default) | stretch | flex-start | flex-end | center | baseline;
    }
    
    • 默认值是auto。
  • 相关阅读:
    Ubuntu Docker 安装
    apt安装 E: 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-frontend),是否有其他进程正占用它?
    Ubuntu18.04 网路图标消失连接不上网
    Liunx 安装配置NFS服务,挂载目录
    python shutil包 文件/目录的复制,移动
    python urllib包 实现通过http下载文件
    MAC上的Terminal光标快捷键
    Safari下载zip文件后不再自动打开
    Wordpress: contact form 7 表单内容同行
    Zoi选项 — Insure抑制功能
  • 原文地址:https://www.cnblogs.com/douglasryan/p/10654899.html
Copyright © 2011-2022 走看看