zoukankan      html  css  js  c++  java
  • css3弹性伸缩和使用

    columns  分栏
    column的中文意思就是栏的意思,在html中,作用是分列,把一块内容相同比例均匀的分成一块一块的列,想报纸的内容似的,一篇文章在一张内容上分成好几栏那样显示,它的属性有
    1.columns:  columns-width   column-count;   每一列的宽度和分成多少列;
    例:columns: 200px 3;   (ie10以上浏览器支持,火狐,谷歌支持要加兼容前缀)
    -webkit-columns:
    -moz-columns:
    -ms-columns:
    2.column-gap: width normal;  (列与列之间的间距宽度,自定义或者默认normal,normal情况下,列之间间隙的宽度等于字体大小的宽度。)
    例:column-gap:20px;  (默认是normal);
    (ie10以上都支持,火狐谷歌需要加上加上兼容前缀)
    3.column-rule:  column-rule-width   column-rule-style  column-rule-color;
    用来设置列与列之间间隙中间那条分割线,属性值有线的宽度,样式,颜色;
    例:column-rule:5px solid red;
    (ie10以上的ie都支持,火狐谷歌需要加上前缀)
     
    还有三个属性,用的不多,兼容性也不太好
    4.column-span: 是否跨列,一般用来对栏目中的某个元素设置它显示方式是否横跨所有列,
    默认是none,不横跨列显示,横跨列显示是all属性值;
    例:column-span:all;(兼容性不是很好,ie10以上的浏览器支持,火狐不支持。)
    5.column-fill:auto  balance;对列的高度的设置方式,默认是auto,列的高度自适应内容,
    balance指定列的高度以其中最高的一列统一。(此方法用的不多,了解为主)
    6.column-break-before(after):属性值有auto(默认,不强迫也不禁止在指定的块级元素前产生新列),always(在指定的块级元素前断行产生新列),avoid(禁止在指定的块级元素前产生新列)  用的比较少,了解为主,(ie10以上ie浏览器支持,火狐不支持。)
     
     
     
    伸缩盒(弹性盒模型)(旧版)
    例:
    <style>
    #box{display:-webkit-box; display:-moz-box; display: -ms-box; display: box; 600px; height:180px; margin:0; padding:0; list-style:none; box-orient:horizontal;-webkit-box-orient:horizontal; }
    .li1{-weblit-box-flex:1; -moz-box-flex:1; -ms-box-flex:1; background:#666666;}
    .li2{-webkit-box-flex:2; -moz-box-flex:2; -ms-box-flex:2; background:#999999;}
    .li3{-webkit-box-flex:3; -moz-box-flex:3; -ms-box-flex:3; background:#cccccc;}
    </style>
    <ul id="box">
         <li class="li1">1</li>
         <li class="li2">2</li>
         <li class="li3">3</li>
    </ul>
    注意:一定要开启弹性盒模型,给父元素加 display:box; 属性。
    display:-webkit-box;    display: -moz-box;   display: -ms-box; 
     
    设置弹性盒模型子元素的排列方式
    box-orient : horizontal (从左到右水平排列)   vertical  (从上到下纵向排列)
    伸缩盒子元素的对其方式
    box-pack :  start (从开始位置对齐,左对齐或上对齐)
                        center (居中对齐)
                        end (从结束对齐,右对齐或下对齐)
                        justify (两端对齐)
    设置伸缩盒子的子元素的对其方式
    box-align :  start  (从开始位置对其)
                        center  (居中对齐)
                        end     (从结束位置对其)
                        baseline     (基线对齐)
                        stretch     (自适应父元素尺寸)
    box-flex :  设置子元素占父元素空间的比例
    box-flex : 1;
    -webkit-box-flex : 1;
    -moz-box-flex : 1;
    box-flex-group :  不理解
    box-ordinal-group: 设置盒子子元素的显示顺序  整数值来确定显示顺序
    box-direction : 设置伸缩盒子对象的子元素的排列顺序是否反转
                             normal (默认值,子元素按照正常顺序排列)
                             reverse (反转伸缩盒子对象的排列顺序)
    box-lines :  设置伸缩盒对象的子元素是否可以换行显示;
                        singel : 伸缩盒对象的子元素只在一行显示
                         multiple : 伸缩盒对象的子元素超出父元素的空间是换行显示。  
     
     
    伸缩盒(弹性盒模型)(新版)
    flex
    需要给盒子添加 display : flex;属性开启弹性盒模型。display : -webkit-flex;
    flex-grow : 按比例分配父元素剩下的空间。
    flex-shrink : 按比例收缩移除父元素的空间。
    flex-basis : 设置弹性盒伸缩基准值 length(长度值来定义宽度)   百分比    auto(无特定)   content(基于内容自动计算宽度)
    flex-flow : 设置弹性盒模型子元素的排列方式   flex-direction(定义弹性盒子元素排列方向)   flex-wrap(控制flex容器是单行还是多行) ;
    flex-direction :  设置弹性和子元素的排列方式。
              row : 横向从左到右排列
              row-revers : 对其方式与row相反
              column : 纵向从上到下排列
              column-revers : 对其方式与column相反。
    flex-wrap : 设置容器是单行还是多行
              nowrap : flex容器为单行,子项可能会溢出
              wrap : flex容器为多行, 子项溢出分布会放置到新行,子项内部会发生断行
              wrap-reverse : 反转wrap排列
    align-content : 子元素在弹性盒里的对其方式
              flex-start:
              flex-end:
              center:
              space-between:
              space-around:
              stretch:默认值
    align-items : 定义子元素在容器里的侧轴(纵轴)方向上的对其方式
              flex-start : 
              flex-end:
              center:
              baseline:
              stretch:默认值
    align-self : 定义flex子项单独在侧轴(纵轴)方向上的对齐方式, 适用flex子项
              auto : 
              flex-start : 
              flex-end:
              center:
              baseline:
              stretch
    justify-content : 设置弹性盒子元素在横轴方向上的对其方式
              flex-start:
              flex-end:
              center:
              space-between:
              space-around;;
    order : 用数值定义排序方式,数值小的排在最前面,可以为负值。
  • 相关阅读:
    代码review之 isInfoEnable()
    sdk、jdk、jre、jvm、jdt、cdt分别都是什么东西
    思考总结: 决胜21点 开篇 概率问题
    Java多线程开发系列之四:玩转多线程(线程的控制2)
    Java多线程开发系列之四:玩转多线程(线程的控制1)
    Java多线程开发系列之三:线程这一辈子(线程的生命周期)
    Java多线程开发系列之二:如何创建多线程
    [系列] Gin框架
    [系列] Gin框架
    [系列] Gin 框架
  • 原文地址:https://www.cnblogs.com/baixuemin/p/6492510.html
Copyright © 2011-2022 走看看