zoukankan      html  css  js  c++  java
  • Flex布局篇2

    flex布局,又叫弹性布局,是HTML5(css3)中新出的布局方式,主要用于替代传统的float布局。

    display:flex;

    flex-direction:设置布局方向。

      默认从左到右row。

      row-reverse从右到左。

      

      column从上到下。

      

      column-reverse从下到上。

      

    justify-content:设置子元素在布局方向上的对齐方式。

      flex-start:对齐开始位置。

      flex-end:对齐结束位置。

      center:居中。

      space-around:间距平分。

      

      space-between:两侧贴边,间距平均。

      

    align-items:设置布局的子元素在垂直于布局方向上的对齐方式。

      flex-start

      center

      flex-end

    flex-basis:设置本元素在父元素布局方向上的长度。

    单独给第一个div加这个属性之后:

    .sp{         
        flex-basis: 50px;
    }

    其他两个是width的宽度,而第一个宽度变为我们所设置的flex-basis值:

    flex-wrap:flex默认不折行,需要换行时主动设置这个属性。
    wrap
    wrap-reverse
     
    align-self:单独设置
     
    flex-grow:当flex布局的父元素布局方向上的长度大于所有子元素的长度时,额外的长度分配给这个子元素多少(按比例分配默认为0)。
     
    flex-shrink:当flex的父元素布局方向上的长度不足子元素长度之和时,让哪些子元素变小,(按比例分配,默认为1)
    关于上面两个属性的使用如下,这样设置以后拉动改变浏览器窗口大小,d2不随窗口变化,其他两个随窗口的改变而改变,而且改变程度相同(1:1):
    #d1{
          flex-grow: 0;
          flex-shrink:1;            
    }
    #d2{
          flex-grow: 1;
          flex-shrink:0;            
    }
    #d3{
           flex-grow: 0;
           flex-shrink: 1;
    }

    这样用flex就可以实现了定宽居中的布局方式,关于定宽居中的更多实现方式,请看>>

     
  • 相关阅读:
    OpenGL中 Canvas 性能分析
    美颜重磅技术之GPUImage源码分析
    为什么我推荐你用Ubuntu开发?
    使用TensorFlow进行训练识别视频图像中物体
    常用 Git 操作
    JavaScript 禁止表单提交
    AngularJS 解决 SEO 问题
    Linux 命令
    重装Ubuntu系统并配置开发环境
    php开发入门教程
  • 原文地址:https://www.cnblogs.com/PeriHe/p/8277605.html
Copyright © 2011-2022 走看看