zoukankan      html  css  js  c++  java
  • css flex相关属性

    一、box-flex

    定义两个可伸缩的 p 元素。如果父元素的总宽度是 300 像素,则 #p1 的宽度是 100 像素,而 #p2 的宽度是 200 像素

     1 #p1
     2 {
     3 -moz-box-flex:1.0; /* Firefox */
     4 -webkit-box-flex:1.0; /* Safari 和 Chrome */
     5 box-flex:1.0;
     6 border:1px solid red;
     7 }
     8 
     9 #p2
    10 {
    11 -moz-box-flex:2.0; /* Firefox */
    12 -webkit-box-flex:2.0; /* Safari 和 Chrome */
    13 box-flex:2.0;
    14 border:1px solid blue;
    15 }

    目前没有浏览器支持 box-flex 属性。

    Firefox 支持替代的 -moz-box-flex 属性。

    Safari、Opera 以及 Chrome 支持替代的 -webkit-box-flex 属性。

    2.flex

    flex CSS简写属性 设置了弹性项目如何增大或缩小以适应其弹性容器中可用的空间。

    此属性是以下CSS属性的简写:

     1 /* 关键字值 */
     2 flex: auto;
     3 flex: initial;
     4 flex: none;
     5 
     6 /* 一个值, 无单位数字: flex-grow */
     7 flex: 2;
     8 
     9 /* 一个值, width/height: flex-basis */
    10 flex: 10em;
    11 flex: 30px;
    12 flex: min-content;
    13 
    14 /* 两个值: flex-grow | flex-basis */
    15 flex: 1 30px;
    16 
    17 /* 两个值: flex-grow | flex-shrink */
    18 flex: 2 2;
    19 
    20 /* 三个值: flex-grow | flex-shrink | flex-basis */
    21 flex: 2 2 10%;
    22 
    23 /*全局属性值 */
    24 flex: inherit;
    25 flex: initial;
    26 flex: unset;

    可以使用一个,两个或三个值来指定 flex属性。

    单值语法: 值必须为以下其中之一:

    双值语法: 第一个值必须为一个无单位数,并且它会被当作 <flex-grow> 的值。第二个值必须为以下之一:

    • 一个无单位数:它会被当作 <flex-shrink> 的值。
    • 一个有效的宽度值: 它会被当作 <flex-basis> 的值。

    三值语法:

    • 第一个值必须为一个无单位数,并且它会被当作 <flex-grow> 的值。
    • 第二个值必须为一个无单位数,并且它会被当作  <flex-shrink> 的值。
    • 第三个值必须为一个有效的宽度值, 并且它会被当作 <flex-basis> 的值。
    initial
    元素会根据自身宽高设置尺寸。它会缩短自身以适应 flex 容器,但不会伸长并吸收 flex 容器中的额外自由空间来适应 flex 容器 。相当于将属性设置为"flex: 0 1 auto"。
    auto
    元素会根据自身的宽度与高度来确定尺寸,但是会伸长并吸收 flex 容器中额外的自由空间,也会缩短自身来适应 flex 容器。这相当于将属性设置为 "flex: 1 1 auto".
    none
    元素会根据自身宽高来设置尺寸。它是完全非弹性的:既不会缩短,也不会伸长来适应 flex 容器。相当于将属性设置为"flex: 0 0 auto"。
    <'flex-grow'>
    定义 flex 项目的 flex-grow 。负值无效。省略时默认值为 1。 (初始值为 0)
    <'flex-shrink'>
    定义 flex 元素的 flex-shrink 。负值无效。省略时默认值为1。 (初始值为 1)
    <'flex-basis'>
    定义 flex 元素的 flex-basis 属性。若值为0,则必须加上单位,以免被视作伸缩性。省略时默认值为 0。(初始值为 auto)
     

    大多数情况下,开发者需要将 flex 设置为以下值之一: autoinitialnone,或一个无单位正数。要查看这些值的效果,请尝试调整以下 flex容器的大小:

     
     

    默认情况下,元素不会缩短至小于内容框尺寸,若想改变这一状况,请设置元素的min-width 与 min-height属性。

     浏览器兼容性:
  • 相关阅读:
    MySql状态查看方法 MySql如何查看连接数和状态?
    MySQL连接数超过限制的解决方法
    JS正则表达式获取分组内容实例
    jquery data方法获取某个元素上事件
    javascript浮点数转换成整数三种方法
    ThinkPHP CURD方法中field方法详解
    python3.3使用tkinter实现猜数字游戏代码
    Expo大作战(二十四)--expo sdk api之Accelerometer
    Expo大作战(二十三)--expo中expo kit 高级属性(没干货)
    Expo大作战(二十二)--expo分离后的部署(expokit)
  • 原文地址:https://www.cnblogs.com/zhilu/p/15233765.html
Copyright © 2011-2022 走看看