本篇主要包括:

■  Grid简介
■  应用Grid
■  Multiple Grids

Grid简介

Bootstrap中,把页面分成12等份,这就是所谓的Grid。

在Bootstrap中,用类名控制,这些类型遵循".col-xx-6"类似的形式。

2个6就占满整个页面。所以,类名最后面的数字表示要占几个格子。

又比如,3个4也占满整个页面。

又比如,4个3也占满整个页面。

又比如,6个2也占满整个页面。

另外,类似".col-xx-10 .col-xx-offset-2"这样的类名,offset表示偏移,2表示向右偏移2个单元格。

以上值得注意的是:在倒数第二行,当把".col--xx-3"放在".col-xx-3 .col-xx-offset-2"之后的时候,由于超过了12个单元格的大小,".col--xx-3"会自动跑到下一行的最开头。

应用Grid

id为body的section如何应用Grid呢?
→在index.html中,给id为body的section加上class="container"属性
→给id为main的section加上class="col-md-8"属性
→给id为sidebar的section加上class="col-md-4"属性

如何让header和footer部分也应用Grid呢?
→去掉id为page的div的class="container"属性,变为:<div id="page">
→给header加上class="container"属性,变为:<header class="container">
→给footer加上class="container"属性,变为:<footer class="container">

以上,header, body, footer部分都应用了Grid,body的main部分占8个单元格,body的sidebar部分占4个单元格。

so far so good。但是,如果我们把浏览器的宽度缩小到像智能手机屏幕般大小,一些不和谐的方面呈现了出来:

比如,本来一行的标题撑成了2行:

比如,本来可以完整呈现的图片,现在需要滑动水平滚动条才可以窥其全貌:

还比如,原先在右边的部分,被挤到了下方,等等。

如何解决这些问题呢?

Multiple Grids

Multiple Grids的意思是:一个页面元素可以有多个表示单元格大小的类名。不同的页面宽度,启用不同的类。

在Bootstrap 3中,
".col-lg-xx"表示页面宽度>=1200像素。
".col-md-xx"表示页面宽度>=992像素。
".col-sm-xx"表示页面宽度>=768像素。
".col-xs-xx"表示页面宽度<768像素。

我们可以为一个html元素赋予多个类名,区分地表示,在ld情况下占几个单元格,在md情况下占几个单元格,等等。

假设我们需要考虑sm的情况,即面宽度>=768像素的情况。
→在id为main的section中,为class增加col-sm-9
→在id为sidebar的sectioin中,为class增加col-sm-3

现在,把页面宽度调整到大概800像素的大小。

可见,这时候,正如之前设置的,id为main的section占了9个单元格,id为sidebar的sectioin占了3个单元格。

接着,我们再考虑xs的情况,即页面宽度<768像素的情况。
→在id为main的section中,为class增加col-xs-6
→在id为sidebar的sectioin中,为class增加col-xs-6

现在,把页面宽度调整到大概590像素的大小。

可见,这时候,正如之前设置的,id为main的section占了6个单元格,id为sidebar的sectioin占了6个单元格。

但是,当页面宽度<768像素的时候,把左右2边都设置成占6个单元格的做法,不太可能出现在实际项目中,以上这么做只是为了演示。我们还需要把这种情况对应的类名删除。回到如下的状态:

参考资料:WilderMinds

“Bootstrap 3之美”系列类包括:

Bootstrap 3之美01-下载并引入页面

Bootstrap 3之美02-Grid简介和应用

Bootstrap 3之美03-独立行,文字环绕,图片自适应,隐藏元素

Bootstrap 3之美04-自定义CSS、Theme、Package

Bootstrap 3之美05-排版、Button、Icon、Nav和NavBar、List、Table、Form

Bootstrap 3之美06-Page Header、Breadcrumbs、Dropdowns、Button Dropdowns、用Button和Dropdowns模拟Select、Input Groups、Thumbnails、Panels、Wells

Bootstrap 3之美07-插件Collapse、Accordion、Modal、Tab、Tooltip、Alert、Carousel

Bootstrap 3之美02-Grid简介和应用的更多相关文章

  1. Bootstrap 3之美07-插件Collapse、Accordion、Modal、Tab、Tooltip、Alert、Carousel

    类似Page Header, Breadcrumbs, Dropdowns等,都是Bootstrap的组件,是静态的.如果涉及到交互,Bootstrap提供了插件.这些插件包括: ○ 过渡效果: bo ...

  2. Bootstrap 3之美06-Page Header、Breadcrumbs、Dropdowns、Button Dropdowns、用Button和Dropdowns模拟Select、Input Groups、Thumbnails、Panels、Wells

    本篇主要包括: ■  Page Header■  Breadcrumbs■  Button Groups■  Dropdowns■  Button Dropdowns■  用Button和Dropdo ...

  3. Bootstrap 3之美05-排版、Button、Icon、Nav和NavBar、List、Table、Form

    本篇主要包括: ■  排版■  Button■  Icon■  Nav和NavBar■  List■  Table■  Form 排版 ● 斜体:<em>● 加粗体:<strong& ...

  4. Bootstrap 3之美04-自定义CSS、Theme、Package

    本篇主要包括: ■  自定义CSS■  自定义Theme■  自定义Package 自定义CSS 有时候,需要自定义或重写Bootstrap默认的CSS.→在css文件夹下创建一个site.css→假 ...

  5. Bootstrap 3之美03-独立行,文字环绕,图片自适应,隐藏元素

    本篇主要包括: ■  添加独立的一行■  文字环绕■  图片自适应■  隐藏元素 添加独立的一行 在id为body的section和id为main的section之间,添加2张图片. 我们发现,新加的 ...

  6. Bootstrap 3之美01-下载并引入页面

    本篇主要包括: ■ 下载Bootstrap 3■  Bootstrap 3引入页面 下载Bootstrap 3 →打开网站:http://getbootstrap.com/→点击屏幕中央位置的Down ...

  7. 002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介

    002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介 学习Java的基础语法 Java是一门编程语言,学习的逻辑其实和现实世界的语言是一样的,需要了 ...

  8. 终结篇:RemoteWebDriver与Grid简介-----Selenium快速入门(十五)

    Selenium的基本使用,已经介绍得差不多了,今天来简单说说RemoteWebDriver与Grid,也是本系列的最后一篇. 还记得本系列第一章(Selenium简介与环境搭配)的配置中,提到我们下 ...

  9. 【Bootstrap基础学习】02 Bootstrap的布局组件应用示例

    字体图标的应用示例 <button type="button" class="btn btn-default"> <span class=&q ...

随机推荐

  1. centos7 vnc 无法systemctl启动

    1.centos7 vnc 无法systemctl启动 报错如下:Failed to start Remote desktop service (VNC) 2.解决办法 错误服务脚本名 vncserv ...

  2. php取得当前时间函数

    php取得当前时间函数文章提供了php的几种获取当前时间的函数,date,time等哦,同时告诉我如何解决时区问题哦. php获取当前时间 使用函式 date() 实现 <?php echo $ ...

  3. hdu 3537 翻硬币 每次能翻1个 或2个 或3个

    N 枚硬币排成一排,有的正面朝上,有的反面朝上.我们从左开始对硬币按1 到N 编号. 第一,游戏者根据某些约束翻硬币,但他所翻动的硬币中,最右边那个硬币的必须是从正面翻到反面. 第二,谁不能翻谁输. ...

  4. day7 反射

    反射是python开发中常用的功能,伴随开发的整个过程,因此要熟练掌握反射的用法. 反射常用的函数有四个:hasattr().getattr().setattr()和delattr()四个反射的函数. ...

  5. 【51nod】1251 Fox序列的数量

    题解 容斥题 我们枚举出现次数最多的数出现了K次 然后我们需要计算的序列是所有数字出现个数都不超过K - 1次 我们枚举不合法的数字的数目j,说明这个排列里除了我们固定出现K次的数至少有j个数是不合法 ...

  6. Ionic实战三:Ionic 图片预览可放大缩小左右滑动demo-iClub图片预览

    这个demo的主要功能有两个,一个是首页的导航向上拉动会浮动在最上面的效果,另一个就是我们平时非常实用的功能,就是图片预览功能 点击可以放大图片,并且可以左右滑动,还可以双击放大缩小图片以及双手指控制 ...

  7. MongoDB图形化管理工具Toad Mac Edition

    昨天介绍了在Mac上安装MongoDB,安装好并配置环境变量后,在终端上用mongo命令就可以进入MongoDB的命令行管理界面,但我更习惯在图形化界面下管理数据库,这样更直观.今天我再介绍一款在Ma ...

  8. 这套完美的Java环境安装教程,完整,详细,清晰可观,让你一目了然,简单易懂。⊙﹏⊙

    JDK下载与安装教程 2017年06月18日 22:53:16 Danishlyy1995 阅读数:349980  版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.cs ...

  9. MongoDB复制原理

    ##mongodb复制(主从服务器数据备份, 一个主服务器可以有很多个从服务器) #mongodb的复制至少需要两个节点.其中一个是主节点,负责处理客户端请求,其余的都是从节点,负责复制主节点上的数据 ...

  10. 联系表单 1_copy

    你的名字 (必填) [text* your-name] 你的邮箱 (必填) [email* your-email] 主题 [text your-subject] 你的留言 [textarea your ...