zoukankan      html  css  js  c++  java
  • flex布局

    概念

    • 开启了flex布局的元素叫做flex container
      display设置为flex(以block形式)或者inline-flex(以inline形式)
    • flex container的直接子元素叫做flex items

    模型

    • main axis:主轴(默认是x轴, 可以改变)
    • cross axis:交叉轴(默认是y轴)
    • main size: 主轴2大小
    • main start:主轴开始位置
    • main end:主轴结束位置
      cross axis同上

    属性

    应用在flex-container上的css属性

    flex-flow

    flex-wrap || flex-direction的简写

    flex-direction

    • 设置4个方向

    flex-wrap

    默认情况下,所有items都会在同一行显示

    • nowrap(默认): 单行,宽度不够时会将items的宽度压缩
    • wrap: 多行,但是会将总高度平分到每一行
    • wrap-reverse: 多行(对比wrap,cross start和cross end相反)

    justify-content

    决定flex items在main axis上的对齐方式

    • flex-start(默认值): 与main start对齐
    • flex-end: 与main end对齐
    • center: 居中对齐
    • space-between:
      1. items之间的距离相等
      2. 与main start, main end两端对齐
    • space-evenly:
      1. items之间的距离相等
      2. items与main start, main end之间的距离等于items之间的距离
    • space-around:
      1. items之间的距离相等
      2. items与main start, main end之间的距离是items之间距离的一半

    align-content

    决定多行的flex items在交叉轴上的对齐方式,
    参数同justify-content

    align-items


    其中baseline的基准线是指第一行文本的底线

    应用在flex-item上的css属性

    order

    决定了items的排布顺序

    • 可以设置任意整数(正整数,负整数,0),值越小就越排在前面
    • 默认是0

    align-self

    参数同container的align-items属性参数,
    使得2该子元素的对齐方式覆盖它的container设置的align-items对齐方式,如下图,item3通过该属性就可以单独设置

    flex-grow

    • 决定了items如何扩展,(按一定的比例放大到100%)
      1. 可以设置任意非负数字,默认是0
      2. 当flex container在main axis方向上有剩余size时,flex-grow才会生效
    • 如果所有items的flex-grow总和超过1,每个item扩展的size为:container的剩余size*flex-grow/sum。例如下图item1,2,3的grow分别为2,2,1。如果是1,1,1的话则会平分所有宽度。
    • 如果所有items的flex-grow总和不超过1,每个item扩展的size为:container的剩余size*flex-grow
    • items扩展后的最终size不能超过最大宽度/高度

    flex-shrink

    用法同flex-grow,功能相反,针对超过container的那部分size

    flex-basis

    指定主轴方向item的长度,相当与item的宽度,优先级比width/height 高

    flex

  • 相关阅读:
    常用的几个vagrant命令
    window下sh文件在linux转码
    centos 7 免密登录
    centos7系列-给普通用户sudo权限
    Hadoop hdfs完全分布式搭建教程
    ribbon的注解使用报错--No instances available for [IP]
    修改VirtualBox虚拟机默认存储路径及虚拟机迁移方法
    【SpringMVC】文件上传Expected MultipartHttpServletRequest: is a MultipartResolver错误解决
    发现不错待研究的技术
    android的开发 华为手机上不显示menu键
  • 原文地址:https://www.cnblogs.com/qian-shan/p/13291599.html
Copyright © 2011-2022 走看看