Bootstrap,基础_基础

-

### 什么是`Bootstrap`?

`bootstrap`是一个最受欢迎的 HTML、CSS 和 JS 框架,用于开发响应式布局、移动设备优先的 WEB 项目。通俗的讲,`bootstrap`就是预先定义好了一套优美的`CSS`样式和一套`组件`,前端开发者可以直接拿来使用,加速开发效率,并且他是响应式布局的,所以写的一套代码可以在多种设备中进行使用。

### 如何使用`bootstrap`?

要使用`bootstrap`很简单,只要[下载](https://github.com/twbs/bootstrap "")源代码,然后把`bootstrap.min.css`和`bootstrap.min.js`以及`jquery.min.js`导入到`html`文件中即可使用。或者是使用[bootcss](http://www.bootcss.com/ "")网站提供的`CDN`加速服务,把链接导入到`HTML`文件中即可,要注意的事情是,`jquery`必须放在`bootstrap.min.js`之前,因为`bootstrap.min.js`依赖`jquery`,那么以下将使用`CDN`的方式展示样例代码:

```html

《!-- 新 Bootstrap 核心 CSS 文件 --》

《link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.0/css/bootstrap.min.css"》

《!-- jQuery文件。务必在bootstrap.min.js 之前引入 --》

《script src="http://cdn.bootcss.com/jquery/1.11.1/jquery.min.js"》《/script》

《!-- 最新的 Bootstrap 核心 JavaScript 文件 --》

《script src="http://cdn.bootcss.com/bootstrap/3.3.0/js/bootstrap.min.js"》《/script》

```

### `bootstrap`中的栅格系统:

`bootstrap`中最强大也是最核心的一个东西就是响应式,而响应式是通过一个叫做**栅格系统**的东西实现的。栅格系统把一个页面分成12列,bootstrap会根据媒体查询获取当前的浏览器的宽度,然后再把宽度平均分配给12列,html中一个盒子可以占用多列。要使用栅格系统,需要使用到`container/container-fluid`和`row`以及`col-xs-/col-sm-/col-md-/col-lg-`类。`container`相当于一个`table`盒子,装着许许多多的`row`,每个row里面装着许许多多的`col`,通过这样一种结构,构成了一个栅格系统,而`container`和`container-fluid`的唯一区别是,`container-fluid`是全屏的,而`container`不是全屏的,左右两边会有一个间距。

* `col-lg-n`:浏览器大于1200px时候的显示方式.

* `col-md-n`:浏览器大于992px时候的显示方式.

* `col-sm-n`:浏览器》=768px时候的显示方式.

* `col-xs-n`:浏览器小鱼768时候的限时方式.

### `bootstrap`中的表格:

这个用起来相当简单,只要给表格添加一个`table`类就可以了。然后根据需要再添加其他的类。

1. `table-striped`:条纹状表格。

2. `table-bordered`:带边框的表格。

3. `table-hover`:鼠标放上去有悬停效果。

可以通过`css`样式来给表格的具体列指定宽度。

### 30个你必须知道的选择器:

```

http://yanhaijing.com/css/2014/01/04/the-30-css-selectors-you-must-memorize/

```

### `bootstrap`中的表单:

1. `form`类的种类:

* `form`:这个类使表单元素填充100%的宽度。

* `form-inline`:这个类使所有表单元素水平排列,表现出`inline-block`的样式。

* `form-horizontal`:这个类使得他的子`form-group`盒子表现出水平排列的效果。

2. `form`子盒子的类:

* 直接子类通过`form-group`来将`label`和`表单元素`包裹起来可以获得最好的排列。

* `input/textarea/select`等元素需要添加`form-control`类,才能使用`bootstrap`的定义好的样式。

* `checkbox`:这个比较特殊,需要使用label进行包裹来获得最好的展示效果。

* `form`相当于有`container`的功能,`form-group`有`row`的功能,可以直接在`form-group`中加一层`div`,然后添加`class='col-md-10'`这样的代码来设置栅格布局。

### 按钮:

使用按钮很简单,只需要给`button`添加一个`btn`的类就可以了,然后根据需要添加其他的有特殊效果的`class`。

例如:

```html

《button type="button" class="btn btn-default"》Default《/button》

```

带有特殊效果的预定义的类有:

1. `btn-default`:默认的白色效果。

2. `btn-primary`:蓝色的效果。

3. `btn-success`:绿色的表示成功的效果。

4. `btn-info`:浅蓝色的表示信息的效果。

5. `btn-warning`:黄色的表示警告的效果。

6. `btn-danger`: 红色的表示危险的效果。

另外,如果想让一个按钮表现出和父盒子一样的宽度,添加`btn-block`可以把按钮拉升到100%的宽度。还有一点需要注意的事,为了在所有浏览器中表现一致,官方推荐在`input`为`submit`的时候,应该尽量使用`button`来代替。

### 辅助类:

1. 具有情景颜色意义的文本:

* `text-muted`:颜色比较柔和的文本。

* `text-primary`:蓝色的文本。

* `text-success`: 代表成功的绿色文本。

* `text-info`: 表示信息的浅蓝色文本。

* `text-warning`: 表示警告信息的黄色文本。

* `text-danger`:表示危险的红色文本。

2. 具有情景颜色意义的文本背景:

* `bg-primary`:蓝色的背景,字体是白色的。

* `bg-success`:绿色的背景,字体是黑色的。

* `bg-info`: 浅蓝色的背景,字体是黑色的。

* `bg-warning`:黄色的背景,字体是黑色的。

* `bg-danger`:红色的背景,字体是黑色的。

### `svg`字体图标:

一种矢量字体图标,为什么说是字体,因为它的大小可以随着字体的大小变化而变化,并且放大不会出现锯齿。使用一个`span`标签包裹起来。

使用方式:

```html

《span class="glyphicon glyphicon-search"》《/span》

```

### 下拉菜单:

下拉菜单的`触发器`和`下拉列表`,需要放在一个`class`为`dropdown`的盒子里面。

1. 触发器:必须有一个`data-toggle='dropdown'`的属性,否则`bootstrap`不能给你收缩。并且为了更好的效果,需要给触发器一个`dropdown-toggle`的`class`。

2. 下拉列表:下拉列表需要添加一个`dropdown-menu`类。

### 输入框组:

通过在文本输入框`《input》`前面、后面或是两边加上文字或按钮,可以实现对表单控件的扩展。使用 `.input-group` 包裹 `.input-group-addon` 类,可以给 `.form-control` 的前面或后面添加额外的元素。

基本使用:

```html

《div class="form-group"》

《div class="input-group"》

《div class="input-group"》

《span class="input-group-addon"》@《/span》

《input type="text" class="form-control"》

《/div》

《/div》

《/div》

```

**注意**:

1. 不支持在输入框的单独一侧添加多个额外元素。

2. 不支持在单个输入框组中添加多个表单控件。

### 导航条:

1. 标签页:使用`nav`类定义一个标签页。然后使用`nav-tabs`定义一个普通的标签页,`nav-pills`来定义一个胶囊式的标签页。示例代码如下:

```html

**普通标签页**

《ul class="nav nav-tabs" role="tablist"》

《li role="presentation" class="active"》《a href="#"》Home《/a》《/li》

《li role="presentation"》《a href="#"》Profile《/a》《/li》

《li role="presentation"》《a href="#"》Messages《/a》《/li》

《/ul》

```

```html

**胶囊式标签页**

《ul class="nav nav-pills" role="tablist"》

《li role="presentation" class="active"》《a href="#"》Home《/a》《/li》

《li role="presentation"》《a href="#"》Profile《/a》《/li》

《li role="presentation"》《a href="#"》Messages《/a》《/li》

《/ul》

```

2. 导航条:

* 导航条使用`navbar`类来作为导航条盒子。

* 然后在里面使用`container`或者是`container-fluid`平铺的来作为容器。

* 使用`navbar-header`来装`brand`。

* 使用`collapse`这个盒子包装链接,可以在缩小的时候,有一个弹出按钮。

* 使用`nav navbar-nav`来包裹真正的链接。

* 使用`navbar-fixed-top`可以让导航条固定在顶部。

* 使用`navbar-static-top`来静止在顶部,如果往下面滚动就会消失。

* 使用`navbar-inverse`改变导航条的外观。

3. 分页:

```

《nav》

《ul class="pagination"》

《li》《a href="#"》«《/a》《/li》

《li》《a href="#"》1《/a》《/li》

《li》《a href="#"》2《/a》《/li》

《li》《a href="#"》3《/a》《/li》

《li》《a href="#"》4《/a》《/li》

《li》《a href="#"》5《/a》《/li》

《li》《a href="#"》»《/a》《/li》

《/ul》

《/nav》

```

`active`表示当前按钮是选中的,`disabled`表示当前按钮不可用。

4. 标签:

使用`label`类来表示一个标签。

```

《span class="label label-default"》Default《/span》

《span class="label label-primary"》Primary《/span》

《span class="label label-success"》Success《/span》

《span class="label label-info"》Info《/span》

《span class="label label-warning"》Warning《/span》

《span class="label label-danger"》Danger《/span》

```

5. 警告框:

使用`alert`类来表示一个警告框。

```

《div class="alert alert-success" role="alert"》...《/div》

```

* `alert-success`:绿色的成功的。

* `alert-info`:浅蓝色的表示信息。

* `alert-warning`:黄色的表示警告。

* `alert-danger`:红色的表示危险的,一般是失败的。

6. 面板:

* 通过使用`panel`类来添加一个面板。

* 通过使用`panel-heading`来给面板添加一个标题,也可以通过使用`panel-title`类的`h1-h6`标签,添加一个预定义样式的标题。

*

推荐访问:Bootstrap 基础 bootstrap基础模板 bootstrap基础教程