手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >Bootstrap布局方式详解
Bootstrap布局方式详解
摘要:Bootstrap3是移动设备优先的,在这个意义上,Bootstrap代码从小屏幕设备(比如移动设备、平板电脑)开始,然后扩展到大屏幕设备(...

Bootstrap 3 是移动设备优先的,在这个意义上,Bootstrap 代码从小屏幕设备(比如移动设备、平板电脑)开始,然后扩展到大屏幕设备(比如笔记本电脑、台式电脑)上的组件和网格。

一、移动设备优先策略

1、内容:决定什么是最重要的。

2、布局

优先设计更小的宽度。

基础的 CSS 是移动设备优先,媒体查询是针对于平板电脑、台式电脑。

3、渐进增强

随着屏幕大小的增加而添加元素。

响应式网格系统随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列。如下图:

Bootstrap布局方式详解1

二、Bootstrap 网格系统(Grid System)的工作原理

网格系统通过一系列包含内容的行和列来创建页面布局。下面列出了 Bootstrap 网格系统是如何工作的:

1、行必须放置在 .container class 内,以便获得适当的对齐(alignment)和内边距(padding)。

2、使用行来创建列的水平组。

3、内容应该放置在列内,且唯有列可以是行的直接子元素。

4、预定义的网格类,比如 .row 和 .col-xs-4,可用于快速创建网格布局。LESS 混合类可用于更多语义布局。

5、列通过内边距(padding)来创建列内容之间的间隙。该内边距是通过 .rows 上的外边距(margin)取负,表示第6、一列和最后一列的行偏移。

7、网格系统是通过指定您想要横跨的十二个可用的列来创建的。例如,要创建三个相等的列,则使用三个 .col-xs-4。

三、媒体查询

媒体查询是非常别致的"有条件的 CSS 规则"。它只适用于一些基于某些规定条件的 CSS。如果满足那些条件,则应用相应的样式。

Bootstrap 中的媒体查询允许您基于视口大小移动、显示并隐藏内容。下面的媒体查询在 LESS 文件中使用,用来创建 Bootstrap 网格系统中的关键的分界点阈值。

/* 超小设备(手机,小于 768px) */ /* Bootstrap 中默认情况下没有媒体查询 */ /* 小型设备(平板电脑,768px 起) */ @media (min-width: @screen-sm-min) { ... } /* 中型设备(台式电脑,992px 起) */ @media (min-width: @screen-md-min) { ... } /* 大型设备(大台式电脑,1200px 起) */ @media (min-width: @screen-lg-min) { ... }

我们有时候也会在媒体查询代码中包含 max-width,从而将 CSS 的影响限制在更小范围的屏幕大小之内。

@media (max-width: @screen-xs-max) { ... } @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { ... } @media (min-width: @screen-md-min) and (max-width: @screen-md-max) { ... } @media (min-width: @screen-lg-min) { ... }

媒体查询有两个部分,先是一个设备规范,然后是一个大小规则。在上面的案例中,设置了下列的规则:

让我们来看下面这行代码:

@media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { ... }

对于所有带有 min-width: @screen-sm-min 的设备,如果屏幕的宽度小于 @screen-sm-max,则会进行一些处理。

四、网格选项

下表总结了Bootstrap 网格系统如何跨多个设备工作:

Bootstrap布局方式详解2

五、基本的网格结构

下面是 Bootstrap 网格的基本结构:

<div> <div> <div></div> <div></div> </div> <div>...</div> </div> <div>....

下面是个具体代码实例:

<div> <h1>Hello, world!</h1> <div> <> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> <div> <> <div>1</div> <div>1</div> <div>1</div> </div> <div> <> <div>1</div> <div>1</div> </div> <div> <> <div>1</div> <div>1</div> </div> </div>

六、偏移列

偏移是一个用于更专业的布局的有用功能。它们可用来给列腾出更多的空间。例如,.col-xs=* 类不支持偏移,但是它们可以简单地通过使用一个空的单元格来实现该效果。

为了在大屏幕显示器上使用偏移,请使用 .col-md-offset-* 类。这些类会把一个列的左外边距(margin)增加 * 列,其中 * 范围是从 1到 11。

在下面的实例中,我们有 <div>..</div>,我们将使用 .col-md-offset-3 class 来居中这个 div。

<div> <div> <div > <p> 测试偏移列---此处往右偏移了3列 </p> </div> </div> <div> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> </div>

显示效果:

Bootstrap布局方式详解3

七、嵌套列

为了在内容中嵌套默认的网格,请添加一个新的 .row,并在一个已有的 .col-md-* 列内添加一组 .col-md-* 列。被嵌套的行应包含一组列,这组列个数不能超过12(其实,没有要求你必须占满12列)。

在下面的实例中,布局有两个列,第二列被分为两行四个盒子。

<div> <div> <div>第一列</div> <div>第二列--里面嵌套了四个DIV <div> <div>我是内容一<br /><br /><br /></div> <div>我是内容二</div> </div> <div> <div>我是内容三<br /><br /><br /></div> <div>我是内容四</div> </div> </div> </div> </div>

显示效果:

Bootstrap布局方式详解4

八、列排序

Bootstrap 网格系统另一个完美的特性,就是您可以很容易地以一种顺序编写列,然后以另一种顺序显示列。

您可以很轻易地改变带有 .col-md-push-* 和 .col-md-pull-* 类的内置网格列的顺序,其中 * 范围是从 1 到 11。

在下面的实例中,我们有两列布局,左列很窄,作为侧边栏。我们将使用 .col-md-push-* 和 .col-md-pull-* 类来互换这两列的顺序。

<div> <div> <div>左边</div> <div>右边</div> </div> </div>

显示效果:

Bootstrap布局方式详解5

【Bootstrap布局方式详解】相关文章:

JavaScript中的lastIndexOf()方法使用详解

JavaScript中的anchor()方法使用详解

JavaScript中reduce()方法的使用详解

javascript瀑布流布局实现方法详解

JS创建对象几种不同方法详解

JavaScript中的条件判断语句使用详解

JavaScript的Date()方法使用详解

javascript的 {} 语句块详解

js同源策略详解

JavaScript中Math.SQRT2属性的使用详解

精品推荐
分类导航