@实例效果

 

@实例代码

<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=0">
    <!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
    <title>flex入门demo04网格布局和百分比布局</title>
    <!-- Bootstrap -->
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <link href="css/template.css" rel="stylesheet">
    <style type="text/css">
      .container{
        width:960px;
        margin:50px auto;
      }

      /*公共样式*/
      .Grid {
        display: flex;
      }
      .Grid-cell {
        text-align:center;
        line-height:58px;
        font-size:14px;
        font-weight: bold;
        background-color: #F4F3F0;
        height:58px;
        flex: 1;
        margin-right:20px;
      }

      /*百分比布局样式*/
      /*flex属性是flex-grow, flex-shrink 和 flex-basis的简写,默认值为0 1 auto。后两个属性可选。
          .item {
            flex: none | [ <'flex-grow'> <'flex-shrink'>? || <'flex-basis'> ]
          }
      该属性有两个快捷值:auto (1 1 auto) 和 none (0 0 auto)。
      建议优先使用这个属性,而不是单独写三个分离的属性,因为浏览器会推算相关值。
      (1),flex-grow属性定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大。
      (2),flex-shrink属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。
      (3),flex-basis属性定义了在分配多余空间之前,项目占据的主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小。
      */
    .Grid {
      display: flex;
    }
    .Grid-cell {
      flex: 1;
    }
    .u-full {
      flex: 0 0 100%;   /*这里百分比表示的是项目占用空间大小。*/
    }
    .u-1of2 {
      flex: 0 0 50%;
    }
    .u-1of3 {
      flex: 0 0 33.3333%;
    }
    .u-1of4 {
      flex: 0 0 25%;
    }
    </style>
    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
      <script src="//cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="//cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->
  </head>
  <body>
    <div class="container">
      <h1 style="width:100px;margin:30px auto;">网格布局</h1>
      <div class="Grid">
        <div class="Grid-cell">1</div>
      </div>
      <div style="height:20px;"></div>
      <div class="Grid">
        <div class="Grid-cell">1/2</div>
        <div class="Grid-cell">1/2</div>
      </div>
      <div style="height:20px;"></div>
      <div class="Grid">
        <div class="Grid-cell">1/3</div>
        <div class="Grid-cell">1/3</div>
        <div class="Grid-cell">1/3</div>
      </div>
      <div style="height:20px;"></div>
      <div class="Grid">

   <!--根据项目的多少,自动分配空间,有1个项目,就独占空间。有2个项目就均分,以此类推。--!>
        <div class="Grid-cell">1/4</div>
        <div class="Grid-cell">1/4</div>
        <div class="Grid-cell">1/4</div>
        <div class="Grid-cell">1/4</div>
      </div>
      <div style="height:20px;"></div>
      <div class="Grid">
        <div class="Grid-cell" style="height:208px;line-height:14px;text-align:left;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;你高中爱上的那个人,会是你这辈子最爱的,这段感情没有小学的无知,没有初中的朦胧,没有大学的利益,没有社会的现实,它有的只是我们内心最真实的感觉。。——亲爱的不二 </div>
        <div class="Grid-cell" style="height:208px;line-height:14px;text-align:left;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;人是否相爱的唯一方法,就是分开;分开以后,如果难受如果思念,那就是真爱。而真爱一定会让两个人,再次相遇。 ——亲爱的不二<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;其实,一个人爱不爱你,是能够感觉到,而且这种感觉相当真切和准确,不用骗自己,更不用勉强自己。如果真的不行,要学会转身。——亲爱的不二<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;我爱你,所以我给了你伤害我的权力,只要我能忍受,我会一直陪伴着你,但你不能伤害我太多。我冷了,会淡漠,痛了,会松手。——亲爱的不二<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        在无数个睡不着的晚上,我相信会有很多人,习惯性的开始闭上眼睛,安静的想念一个人,想念一张脸。而在他们心里,能够有这样一个人可以想念,或许就够了。——亲爱的不二<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;不要对爱你的人太过刻薄,一辈子真正对你好的人也没有几个。多少人在一切都将失去时才幡然醒悟,每个人都有脾气 ,为你忍下所有的怒气,仅仅因为那个人比你更心疼你。——亲爱的不二     </div>
      </div>
      <h1 style="width:120px;margin:30px auto;">百分比布局</h1>
      <div class="Grid">
        <div class="Grid-cell u-1of2">1/2</div>
        <div class="Grid-cell">auto</div>
        <div class="Grid-cell">auto</div>
      </div>
      <div style="height:20px;"></div>
      <div class="Grid">
        <div class="Grid-cell">auto</div>
        <div class="Grid-cell  u-1of3">1/3</div>
      </div>
      <div style="height:20px;"></div>
      <div class="Grid">
        <div class="Grid-cell u-1of4">1/4</div>
        <div class="Grid-cell">auto</div>
        <div class="Grid-cell  u-1of3">1/3</div>
      </div>
    </div>
    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
    <script src="js/jquery.min.js"></script>
    <!--或者用网络版本:<script src="//cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>-->
    <!-- Include all compiled plugins (below), or include individual files as needed -->
    <script src="js/bootstrap.min.js"></script>
    <script type="text/javascript">
    </script>
  </body>
</html>

posted on 2016-05-22 11:50  学到老死  阅读(1525)  评论(0)    收藏  举报