zoukankan      html  css  js  c++  java
  • flexbox 学习笔记 参考阮一峰老师的blog

     

    flex 布局笔记:

     

    采用Flex布局的元素,称为Flex容器(flex container),简称"容器"。它的所有子元素自动成为容器成员,称为Flex项目(flex item),简称"项目"。

     

     

    设为Flex布局以后,子元素的float、clear和vertical-align属性将失效。

     

     

    行内元素也可以使用Flex布局。

     

     

     

    项目默认沿主轴排列。单个项目占据的主轴空间叫做main size,占据的交叉轴空间叫做cross size。

     

    =========================

    flex-direction属性决定主轴的方向(即项目的排列方向)。

    .box {

      flex-direction: row | row-reverse | column | column-reverse;

    }

    ————————

    默认情况下,项目都排在一条线(又称"轴线")上。flex-wrap属性定义,如果一条轴线排不下,如何换行。

    .box{

      flex-wrap: nowrap | wrap | wrap-reverse;

    }

    ———————

    .box {

      flex-flow: <flex-direction> || <flex-wrap>; 默认值:row no-wrap

    }

     

    特别注意:flex-direction 会改变主轴和交叉轴的起点和终点,因此也会

    影响对齐的方式,不过交叉轴一定是垂直,主轴一定是水平的.

    ———————

    justify-content属性定义了项目在主轴上的对齐方式。默认值:flex-start

    ———————

    align-items属性定义项目在交叉轴上如何对齐。

    stretch(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度。

    —————————

     

    align-content属性定义了多根轴线的对齐方式。如果项目只有一根轴线,该属性不起作用。

    注意默认值是stretch,一般要设置flex-start 在换行的时候,才能得到想要的布局

     

    • flex-start:与交叉轴的起点对齐。
    • flex-end:与交叉轴的终点对齐。
    • center:与交叉轴的中点对齐。
    • space-between:与交叉轴两端对齐,轴线之间的间隔平均分布。
    • space-around:每根轴线两侧的间隔都相等。所以,轴线之间的间隔比轴线与边框的间隔大一倍。
    • stretch(默认值):轴线占满整个交叉轴。

    ==============================================================================

    项目也有6个属性:

    order属性定义项目的排列顺序。数值越小,排列越靠前默认为0

    flex-grow属性定义项目的放大比例,默认为0即如果存在剩余空间,也不放大。

    flex-shrink属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。

    flex-basis属性定义了在分配多余空间之前,项目占据的主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小

     

    flex属性是flex-grow, flex-shrink 和 flex-basis的简写,默认值为0 1 auto。后两个属性可选。

    建议优先使用这个属性,而不是单独写三个分离的属性,因为浏览器会推算相关值。

     

    align-self属性允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性。默认值为auto,表示继承父元素的align-items属性,如果没有父元素,则等同于stretch

    .item {

      align-self: auto | flex-start | flex-end | center | baseline | stretch;

    }

     

     

     

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    OutputCache 缓存key的创建 CreateOutputCachedItemKey
    Asp.net Web Api源码调试
    asp.net mvc源码分析DefaultModelBinder 自定义的普通数据类型的绑定和验证
    Asp.net web Api源码分析HttpParameterBinding
    Asp.net web Api源码分析HttpRequestMessage的创建
    asp.net mvc源码分析ActionResult篇 RazorView.RenderView
    Asp.Net MVC 项目预编译 View
    Asp.net Web.config文件读取路径你真的清楚吗?
    asp.net 动态创建TextBox控件 如何加载状态信息
    asp.net mvc源码分析BeginForm方法 和ClientValidationEnabled 属性
  • 原文地址:https://www.cnblogs.com/xuezizhenchengxuyuan/p/6612153.html
Copyright © 2011-2022 走看看