zoukankan      html  css  js  c++  java
  • Bootstrap学习笔记系列1-------Bootstrap网格系统

    Bootstrap网格系统 学习笔记

    简单网格

    先上代码再解释

    <!DOCTYPE html>
    <html>
       <head>
          <title>Bootstrap 模板</title>
          <meta charset="utf-8">
          <!-- 引入 Bootstrap -->
          <link href="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
       </head>
       <body>
          <div class="container">
             <div class="row">
                <div class="col-md-6" style="background-color: #FFFF00">
                <p>第一块区域</p>
                </div>
                <div class="col-md-6" style="background-color: #99fF66">
                <p>第一块区域</p>
                </div>
             </div>
          </div>
    
          <!-- jQuery (Bootstrap 的 JavaScript 插件需要引入 jQuery) -->
          <script src="http://cdn.static.runoob.com/libs/jquery/2.1.1/jquery.min.js"></script>
          <!-- 包括所有已编译的插件 -->
          <script src="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/js/bootstrap.min.js"></script>
       </body>
    </html>
    

    CSS和JS的引用

    BootStrap网格系统的工作原理

    • 行必须放置在 .container class 内, 以便获得适当的对齐和内边距。
      代码的第一个 <div> 的类设置为 container 的目的就是为此,并且代码中的 div.row 也必须放在 div.container 中就是为了获得对齐和内边距。
    • 使用行来创建列的水平组,内容应该放在列内,且唯有列可以是行的直接子元素
    • 预定义的网格类(比较简单)是通过.row.col-xs-4之类的代码来快速实现的。col-xs-4 表示创建一个横跨四格的列(一共是12列)
      这里xs的含义是超小型设备;如果换成.col-sm-4 则表示在小型平板电脑上的四格宽度的列;md 代表中型设备;lg 表示台式机之类的大型设备
      详细请见表格:
    超小设备手机(<768px) 小型设备平板电脑(≥768px) 中型设备台式电脑(≥992px) 大型设备台式电脑(≥1200px)
    网格行为 一直是水平的 以折叠开始,断点以上是水平的 以折叠开始,断点以上是水平的 以折叠开始,断点以上是水平的
    最大容器宽度 None (auto) 750px 970px
    Class 前缀 .col-xs- .col-sm- .col-md-
    列数量和 12 12 12
    最大列宽 Auto 60px 78px
    间隙宽度 30px (一个列的每边分别 15px) 30px (一个列的每边分别 15px) 30px (一个列的每边分别 15px)
    可嵌套 Yes Yes Yes
    偏移量 Yes Yes Yes
    列排序 Yes Yes Yes
    • 网格系统是通过想要横跨的12个可用的列来实现的。各列的总和不用等于12,但是如果想做一个对齐的效果,则要将col横跨的列数达到12个。如果要创建三个相等的列则要使用三个.col-sm-4

    BootStrap的响应式

    如果要让这个实例同时支持大型设备,小型设备和中型设备则须这样定义列的代码

    <div class="col-sm-3 col-md-6 col-lg-4">
        ...
    </div>
    <div class="col-sm-9 col-md-6 col-lg-8">
        ...
    </div>
    

    这样在手机上,它将左边25% 右边75%的布局,在平板电脑上是50%/50%的布局。在大型视口的设备上,它将是33%/66%的布局。

    偏移列

    如果我们就想错落有致按照自己喜欢的方法摆放列的,就要用到偏移列的。使用 .col-md-offset-* 类。这些类就会把一个列的左外边距(margin)增加 * 列,其中 * 范围是从 1 到 11,大家可以尝试下面的代码

    <!DOCTYPE html>
    <html>
       <head>
          <title>Bootstrap 模板</title>
         <meta charset="utf-8">
          <!-- 引入 Bootstrap -->
          <link href="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
       </head>
       <body>
          <div class="container">
             <div class="row">
                <div class="col-md-6 col-md-offset-3" style="height: 100px;background-color: #00FFFF">
                </div>
                <div class="col-md-2 col-md-offset-3" style="height: 100px;background-color: #33FF99">
                </div>
                <div class="col-md-6 col-md-offset-3" style="height: 100px;background-color: #66FF66">
                </div>
                <div class="col-md-2 col-md-offset-3" style="height: 100px;background-color: #99FF33">
                </div>
                <div class="col-md-6 col-md-offset-3" style="height: 100px;background-color: #FFFF00">
                </div>
          <!-- jQuery (Bootstrap 的 JavaScript 插件需要引入 jQuery) -->
          <script src="http://cdn.static.runoob.com/libs/jquery/2.1.1/jquery.min.js"></script>
          <!-- 包括所有已编译的插件 -->
          <script src="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/js/bootstrap.min.js"></script>
       </body>
    </html>
    

    嵌套列

    在内容中可以嵌套默认的网格,也很简单,就是在一个div.col-md-*添加一个新的div.row,并在row中添加新的col就OK了。同样的,小盒子的列数也不能超过12

    <!DOCTYPE html>
    <html>
       <head>
          <title>Bootstrap 模板</title>
         <meta charset="utf-8">
          <!-- 引入 Bootstrap -->
          <link href="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
       </head>
       <body>
          <div class="container">
             <div class="row">
                <div class="col-md-6" style="height: 100px;background-color: #330033">
                </div>
                <div class="col-md-6" style="height: 100px;background-color: #3399FF">
                </div>
             </div>
             <div class="row">
                <div class="col-md-6" style="height: 100px;background-color: #99FF33">
                </div>
                <div class="col-md-6" style="height: 100px;background-color: #99FFCC">
                   <div class="row">
                      <div class="col-md-6" style="height: 50px;background-color: #330033">
                      </div>
                      <div class="col-md-6" style="height: 50px;background-color: #99FF33">
                      </div>
                   </div>
                   <div class="row">
                      <div class="col-md-6" style="height: 50px;background-color: #99FFCC">
                      </div>
                      <div class="col-md-6" style="height: 50px;background-color: #3399FF">
                      </div>
                   </div>
                </div>
             </div>
          </div>
          <!-- jQuery (Bootstrap 的 JavaScript 插件需要引入 jQuery) -->
          <script src="http://cdn.static.runoob.com/libs/jquery/2.1.1/jquery.min.js"></script>
          <!-- 包括所有已编译的插件 -->
          <script src="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/js/bootstrap.min.js"></script>
       </body>
    </html>
    

    列排序

    列排序可以允许我们以一种顺序编写列,以另一种顺序显示列。这就可以让我们用脚本来让列进行动态的移动。
    .col-md-push-*.col-md-pull-*来改变内置网格的顺序。其中*的范围是从1-11;

    <!DOCTYPE html>
    <html>
       <head>
          <title>Bootstrap 模板</title>
          <meta charset="utf-8">
          <!-- 引入 Bootstrap -->
          <link href="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
       </head>
       <body>
          <div class="container">  
             <div class="row">
                <div id="left" class="col-md-6" style="height: 100px;background-color: #FF3333;color:white;">
                   我是第一个
                </div>
                <div id="right" class="col-md-6" style="height: 100px;background-color: #3333CC;color:white">
                   我是第二个
                </div>
             </div>
          </div>  
          <!-- jQuery (Bootstrap 的 JavaScript 插件需要引入 jQuery) -->
          <script src="http://cdn.static.runoob.com/libs/jquery/2.1.1/jquery.min.js"></script>
          <!-- 包括所有已编译的插件 -->
          <script src="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/js/bootstrap.min.js"></script>
          <script type="text/javascript">
             $(document).ready(function(){
                $("#left").click(function(){
                   $(this).addClass("col-md-push-6");
                   $("#right").addClass("col-md-pull-6");
                })
             })
          </script>>
       </body>
    </html>
    
  • 相关阅读:
    质量属性--信息技术手册
    蓝桥杯赛前整理
    感悟:荔枝架构实践与演进历程
    以《淘宝网》为例,描绘质量属性的六个常见属性场景
    感悟:淘宝架构演进背后——零售业务中台架构设计探讨及实践
    为什么要考研???
    寒假学习笔记03
    寒假学习笔记02
    寒假学习笔记01
    数据清洗与数据处理
  • 原文地址:https://www.cnblogs.com/MaFeng0213/p/6055765.html
Copyright © 2011-2022 走看看