Bootstrap框架的要点--栅格系统

不同的公司要求使用框架有所不同,而Bootstrap框架在工作中使用频次较高,其中栅格系统在这一框架中的地位不容小觑,下面我们开始聊聊它吧。

简单介绍:

Bootstrap提供了一套响应式、移动设备优先的栅格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列,栅格系统用于通过一系列的行或列的组合来创建页面布局,而你的内容就放在这些创建好的布局中。这一框架的使用主要是合理且灵活的使用类,因此笔者在下文中聊的大部分是如果给元素加上相应的类。

 

聊聊各种屏幕:在讲其他的之前,我们有必要先回忆下各种屏幕,暂且将其分为4类,它们分别是超小屏幕,比如手机,一般小于768px;小屏幕,比如平板,一般大于768px;中等屏幕,比如桌面显示器,大于992px;还有就是大于1200px 的大屏幕,比如大桌面显示器。

 

栅格参数:

在超小屏幕上总是水平排列,这时候你要给它加上的类的前缀是.col-xs-;而除此之外的屏幕开始时堆叠在一起的,当大于这些阈值时将变成水平排列。小屏幕的类前缀是.col-sm-,中等屏幕的类前缀是.col-md-,大屏幕的类前缀是.col-lg-。以上各种的槽宽都是30px(每列左右均有15px),都可偏移(offset)、嵌套、列排序,这些笔者将在下文中一一解释。

实例:布局的变化过程

顺便提一下,写Bootstrap框架式一定不要忘记引用以下3个文件,首先你需要把这3个提前下载好,由于每个人的存放路径不同,在此贴出图片,具体引用情况因每个人的存放路径而异。

(1)  Bootstrap层叠样式表

(2)  jQuery库,这里只是加载一个jQuery库就可以了,你也可以引用其他版本的

(3)  加载Bootstrap的核心JS库

代码主要部分如下,记住所有的列都必须写在行(.row)内!

<div class="container bg-info">
        <div class="row">
          <div class="col-md-1">.col-md-1</div>
          <div class="col-md-1">.col-md-1</div>
          <div class="col-md-1">.col-md-1</div>
          <div class="col-md-1">.col-md-1</div>
          <div class="col-md-1">.col-md-1</div>
          <div class="col-md-1">.col-md-1</div>
          <div class="col-md-1">.col-md-1</div>
          <div class="col-md-1">.col-md-1</div>
          <div class="col-md-1">.col-md-1</div>
          <div class="col-md-1">.col-md-1</div>
          <div class="col-md-1">.col-md-1</div>
          <div class="col-md-1">.col-md-1</div>
        </div>
        <div class="row">
          <div class="col-md-8">.col-md-8</div>
          <div class="col-md-4">.col-md-4</div>
        </div>
        <div class="row">
          <div class="col-md-4">.col-md-4</div>
          <div class="col-md-4">.col-md-4</div>
          <div class="col-md-4">.col-md-4</div>
        </div>
        <div class="row">
          <div class="col-md-6">.col-md-6</div>
          <div class="col-md-6">.col-md-6</div>
        </div>
    
    </div>

你将得到如下页面:

通过缩放屏幕你可以看到布局由堆叠到对平排列。

列偏移:使用.col-md-offset-*的类使该列向右偏移

代码演示如下:

<div class="container bg-info">
        <div class="row">
          <div class="col-md-4">.col-md-4</div>
          <div class="col-md-4 col-md-offset-4">.col-md-4 .col-md-offset-4</div>
        </div>
        <div class="row">
          <div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
          <div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
        </div>
        <div class="row">
          <div class="col-md-6 col-md-offset-1">.col-md-6 .col-md-offset-3</div>
    </div>
    
    </div>

你将看到如下页面:

你可以改变.col-md-offset-*中的*来感受下偏移的效果

嵌套列:通过添加一个新的 .row 元素和一系列 .col-sm-* 元素到已经存在的.col-sm-* 元素内,记住!被嵌套的行的列数不要超过12

代码演示如下:

<div class="container bg-info">
        <div class="row">
            <div class="col-sm-9">
                Lever 1: .col-sm-9
                <div class="row">
                    <div class="col-xs-8 col-sm-6">        
                        Lever 2:.col-xs-8 .col-sm-6
                    </div>
                    <div class="col-xs-4 col-sm-6">
                        Lever 2:.col-xs-4 .col-sm-6
                    </div>
                </div>
            </div>
        </div>
    </div>

你将看到如下页面

Lever 2的元素总宽度是继承Lever1:.col-sm-9的,以此为基础来把1行再化成12列的。

 

列排序:用.col-md-push-*和.col-md-pull-*来改变列的顺序,我们从字面翻译来就可以很轻松的来理解这两个类的含义,push就是推,把这个东西从原来的位置推走,就是把它推到后面去了,pull就是拉,把这个东西拉过来,意思就是把它拉倒前面

下面来看下代码演示:

<div class="container">
        <div class="row">
              <div class="col-md-9 col-md-push-3">.col-md-9 .col-md-push-3</div>
              <div class="col-md-3 col-md-pull-9">.col-md-3 .col-md-pull-9</div>
        </div>
    
    </div>

你就可以看到如下页面:

我们在代码里明明是把.col-md-9 .col-md-push-3写在了前面,它却实际上显示在了后面,这就是push在其中作梗。

以上就是今天要分享的,希望对您有帮助

posted @ 2016-04-06 18:16  DaisyF  阅读(828)  评论(1编辑  收藏  举报