• flex缩放


    flex-grow::当父控件还有剩余空间的时候,是否进行放大(grow),其中数值代表的是放大比例,值为0的时候表示不放大;

    flex-shrink:当父控件空间不够的时候,是否进行缩小(shrink),其中数值代表的是缩小比例,值为0的时候表示不缩小;

    flex-basis:表示在flex items 被放入flex容器之前的大小,也就是items的理想或者假设大小,但是并不是其真实大小,其真实大小取决于flex容器的宽度、flex items的min-width、max-width等其他样式
    • 当flex-basis和width属性同时存在时,width属性不生效,flex item的宽度为flex-basis设置的宽度;
    • flex items宽度的应用准则:flex-basis (受制于 max|min-width)  优先级大于 width 优先级大于 content;
    • .flex-item{
            flex-basis: 300px;   // 失效
            max- 100px;   
      }
      .item1{
            background: #66efab;
      }
     
    需求:希望底部的内容一直在底部,只有当中间内容多到屏幕底部的时候,底部的内容才自动移出屏幕。大概就是下面这个效果,当绿色的内容多到黄色区域的时候黄色区域自动移动出屏幕:

    解决办法:3个子view套一个父view,父view设置一个min-height:100%; display:flex; flex-direction:column;,中间的view设置flex:1;

    flex是 flex-grow,flex-shrink,flex-basis的缩写

    flex的默认属性是0 1 auto,【父控件有剩余控件也不放大,父控件空间不足按1缩小,保持本身的空间大小】;

    flex:1;的值是1 1 0%,【父控件有剩余空间占1份放大,父控件空间不足按1缩小,自身的空间大小是0%】;

    当 flex:none;的值为 0 0 auto;
    当 flex:auto;的值为 1 1 auto;
    当 flex 取值为一个非负数字,则该数字为 flex-grow 值,flex-shrink 取 1,flex-basis 取 0%;
    当 flex 取值为一个长度或百分比,则视为 flex-basis 值,flex-grow 取 1,flex-shrink 取 1;
    当 flex 取值为两个非负数字,则分别视为 flex-grow 和 flex-shrink 的值,flex-basis 取 0%;
    当 flex 取值为一个非负数字和一个长度或百分比,则分别视为 flex-grow 和 flex-basis 的值,flex-shrink 取 1;
     
     
     
     
     

    原文:https://www.douban.com/note/717223803/

    https://www.jianshu.com/p/57a94430dcbe

  • 相关阅读:
    Vue 路由组件传参的 8 种方式
    JS中通过url动态获取图片大小的方法小结(两种方法)
    基于 Vue.js 实现的精致移动端组件库
    .net core 通过代码创建数据库表
    .net core 框架调用顺序
    POCO的理解
    winform datagridview 同步滚动
    UseIIS
    winform 多个datagridview 之间同步滚动
    winform BackgroundWorker 的用法
  • 原文地址:https://www.cnblogs.com/xjy20170907/p/12730144.html
Copyright © 2020-2023  润新知