Bootstrap资料整理

<!DOCTYPEhtml>                                           

<html lang="zh-cn">

<head>

       <metacharset="UTF-8">

       <metaname="viewport" content="width=device-width,initial-scale=1,maximum-scale=1, user-scalable=no">

       <title>输入框和导航组件</title>

       <linkrel="stylesheet" href="css/bootstrap.min.css">

       <style>

       </style>

</head>

 

<scriptsrc="js/jquery.min.js"></script>

<scriptsrc="js/bootstrap.min.js"></script>

</body>

</html>

1      Bootstrap 介绍

 

【学习要点:概述、特点、结构】

 

1.1    Bootstrap 概述

Bootstrap 是由Twitter 公司(全球最大的微博)的两名技术工程师研发的一个基于

HTML、CSS、JavaScript 的开源框架。该框架代码简洁、视觉优美,可用于快速、简单地

构建基于PC 及移动端设备的Web 页面需求。

 

--为了解决前端开发任务中的协作统一问题,由最初的CSS 驱动项目发展成为内置很多JavaScript 插件和图标的多功能Web 前端

的开源框架。

 

--Bootstrap 最为重要的部分就是它的响应式布局,通过这种布局可以兼容PC 端、PAD以及手机移动端的页面访问。

 

Bootstrap 下载及演示:

国内文档翻译官网:http://www.bootcss.com

瓢城Web 俱乐部官网:http://www.ycku.com

 

1.2    Bootstrap 特点

 

【跨设备、跨浏览器】【响应式布局】【提供的全面的组件】【内置jQuery 插件】【支持HTML5、CSS3】【支持LESS 动态样式】

 

1.3    Bootstrap 结构

 

主要分为三大核心目录:css(样式)、js(脚本)、fonts(字体)。

1.css 目录中有四个css 后缀的文件,其中包含min字样的,是压缩版本,一般使用

这个;不包含的属于没有压缩的,可以学习了解css 代码的文件;而map 后缀的文件则是

css 源码映射表,在一些特定的浏览器工具中使用。

2.js 目录包含两个文件,是未压缩和压缩的js 文件。

3.fonts 目录包含了不同后缀的字体文件。

 

2      排版样式

 

【学习要点:页面排版】:《学习一下Bootstrap 全局CSS 样式中的排版样式,包括了标题、页面主体、对齐、列表等常规内容。》

 

2.1    页面排版

 

2.1.1  页面主体

1.    Bootstrap 将全局font-size 设置为14px,line-height 行高设置为1.428(即20px);

          <p>段落元素被设置等于1/2 行高(即10px);颜色被设置为#333。

 

2.1.2  标题

2.    从h1 到h6《36px、30px、24px、18px、14px、12px》

并且还支持普通内联元素定义class=(.h1 ~ h6)来实现相同的功能。

//内联元素使用标题字体

<spanclass="h1">Bootstrap</span>

<h2>Bootstrap 框架<small>Bootstrap小标题</small></h2>

 

2.1.3  内联文本元素

//添加标记,<mark>元素或.mark 类

<p>Bootstrap<mark>框架</mark></p>

//各种加线条的文本

<del>Bootstrap 框架</del>//删除的文本

<s>Bootstrap 框架</s>//无用的文本

<ins>Bootstrap 框架</ins>//插入的文本

<u>Bootstrap 框架</u>//效果同上,下划线文本

//各种强调的文本

<small>Bootstrap 框架</small>//标准字号的85%

<strong>Bootstrap 框架</strong>//加粗700

<em>Bootstrap 框架</em>//倾斜

 

2.1.4  对齐

<pclass="text-left">Bootstrap 框架</p> //居左

<pclass="text-center">Bootstrap 框架</p> //居中

<pclass="text-right">Bootstrap 框架</p> //居右

<pclass="text-justify">Bootstrap 框架</p> //两端对齐,支持度不佳

<p class="text-nowrap">Bootstrap框架</p> //不换行

 

2.1.5  大小写

//设置英文文本大小写

<pclass="text-lowercase">Bootstrap 框架</p> //小写

<pclass="text-uppercase">Bootstrap 框架</p> //大写

<pclass="text-capitalize">Bootstrap 框架</p>//首字母大写

 

2.1.6  缩略语

//缩略语

Bootstrap<abbrtitle="Bootstrap" class="initialism">框架</abbr>

 

2.1.7  地址文本

//设置地址,去掉了倾斜,设置了行高,底部20px

<address>

<strong>Twitter,Inc.</strong><br>

795 Folsom Ave, Suite 600<br>

San Francisco, CA 94107<br>

<abbrtitle="Phone">P:</abbr> (123) 456-7890

</address>

 

2.1.8  引用文本

//默认样式引用,增加了做边线,设定了字体大小和内外边距

<blockquote>

Bootstrap 框架

</blockquote>

//反向

<blockquoteclass="blockquote-reverse ">

Bootstrap 框架

</blockquote>

 

2.1.9  列表排版

//移出默认样式

<ul class="list-unstyled">

</ul>

//设置成内联

<ul class="list-inline">

</ul>

//水平排列描述列表

<dl class="dl-horizontal">

<dt>Bootstrap</dt>

<dd>Bootstrap 提供了一些常规设计好的页面排版的样式供开发者使用。</dd>

</dl>

 

2.1.10             代码

//内联代码

<code>&lt;section&gt;</code>

//用户输入

press <kbd>ctrl + ,</kbd>

//代码块

<pre>&lt;p&gt;Pleaseinput...&lt;/p&gt;</pre>

 

3      表格和按钮

 

【学习要点:表格、按钮】

 

3.1    表格:table

 

【基本格式:class="table"】

【条纹状表格:class="table table-striped"】

【带边框的表格:class="table table-bordered"】

【悬停鼠标:class="table table-hover"】

【状态类:active、success、info、warning、danger】

//可以单独设置每一行的背景样式

<tr class="success">

【隐藏某一行:class="sr-only"】:<trclass="sr-only">

【响应式表格:class="table-responsive"】

//表格父元素设置响应式,小于768px 出现边框

<body class="table-responsive">

 

3.2    按钮

 

1.可作为按钮使用的标签或元素

//转化成普通按钮

<a href="###" class="btnbtn-default">Link</a>

<button class="btnbtn-default">Button</button>

<input type="button"class="btn btn-default" value="input">

 

注意事项有三点:

(1).针对组件的注意事项

虽然按钮类可以应用到<a> 和<button> 元素上,但是,导航和导航条组件只支持

<button> 元素。

(2).链接被作为按钮使用时的注意事项:

如果<a> 元素被作为按钮使用-- 并用于在当前页面触发某些功能-- 而不是用于

链接其他页面或链接当前页面中的其他部分,那么,务必为其设置role="button" 属性。

(3).跨浏览器展现:

我们总结的最佳实践是:强烈建议尽可能使用<button> 元素来获得在各个浏览器上获得相匹配的绘制效果。

另外,我们还发现了Firefox <30 版本的浏览器上出现的一个bug,其表现是:阻

止我们为基于<input> 元素所创建的按钮设置line-height 属性,这就导致在

Firefox 浏览器上不能完全和其他按钮保持一致的高度。

 

2.预定义样式:+btn+

【btn-default:默认样式】

【btn-success:成功样式】

【btn-info:一般信息样式】

【btn-warning:警告样式】

【btn-danger:危险样式】

【btn-primary:首选项样式】

【btn-link:链接样式】

 

3.3    尺寸大小

【从大到小的尺寸】+btn+

【class="btn btn-lg"、class="btn"、class="btnbtn-sm"、class="btn btn-xs"】

 

3.4    块级按钮

3.    【btn-block】

//块级换行

<button class="btnbtn-block">Button</button>

 

 

3.5    激活状态:【active】

//激活按钮

<button class="btnactive">Button</button>

 

6.禁用状态

//禁用按钮

<button class="btn activedisabled">Button</button>

 

 

4      表单和图片

 

【学习要点:表单、图片】

《主要学习一下Bootstrap 表单和图片功能,通过内置的CSS 定义,显示各种丰富的效果。》

 

4.1    表单

【1.基本格式:class="form-control"

//实现基本的表单样式

<form>

<div class="form-group">

<label>电子邮件</label>

<input type="email"class="form-control"

placeholder="请输入您的电子邮件">

</div>

</form>

【2.内联表单:其中的内容一行显示,form-inline样式可多用【form-inline】

//让表单左对齐浮动,并表现为inline-block内联块结构

<form class="form-inline">

注:当小于768px,会恢复独占样式

【3.表单合组:【input-group-addon】

//前后增加片段

<div class="input-group">

<divclass="input-group-addon">¥</div>

<input type="text" class="form-control">

<divclass="input-group-addon">.00</div>

</div>

【4.水平排列【form-horizontal】

//让表单内的元素保持水平排列

<formclass="form-horizontal">

<div class="form-group">

<label class="col-sm-2control-label">电子邮件</label>

<div class="col-sm-10">

<input type="email"class="form-control" placeholder="请输

入您的电子邮件">

</div>

</div>

</form>

注:这里用到了col-sm 栅格系统,后面章节会重点讲解,而control-label 表示和

父元素样式同步。】

【5.复选框和单选框:

//设置复选框,在一行

<div class="checkbox">

<label>

<input type="checkbox">体育

</label>

</div>

 

//设置禁用的复选框【disabled】

<div class="checkboxdisabled">

<label>

<input type="checkbox"disabled>音乐

</label>

</div>

 

//设置内联一行显示的复选框【checkbox-inline】

<labelclass="checkbox-inline">

<input type="checkbox">体育

</label>

<label class="checkbox-inlinedisabled">

<input type="checkbox" disabled>音乐

</label>

 

//设置单选框:【radio】

<div class="radiodisabled">

<label>

<input type="radio"name="sex" disabled>男

</label>

</div>

【6.下拉列表

//设置下拉列表

<selectclass="form-control">

<option>1</option>

<option>2</option>

<option>3</option>

<option>4</option>

<option>5</option>

</select>

7.校验状态【has-error:错误状态、has-success:成功状态、has-warning:警告状态】

//设置为错误状态

<div class="form-grouphas-error">

【8.添加额外的图标【glyphicon-ok:成功状态、glyphicon-warning-sign:警告状态、glyphicon-remove:错误状态】

//文本框右侧内置文本图标

<div class="form-group has-feedback">

<label>电子邮件</label>

<input type="email"class="form-control">

<span class="glyphicon glyphicon-okform-control-feedback"></span>

</div>

【9.控制尺寸

//从大到小

<input type="password"class="form-control input-lg">

<input type="password" class="form-control">

<input type="password"class="form-control input-sm">

注:也可以设置父元素form-group-lg、form-group-sm,来调整。

 

4.2    图片

【Bootstrap 提供了一些丰富的图片样式供开发者使用】

1.图片形状

//三种形状

<img src="img/pic.png"alt="图片" class="img-rounded">

<img src="img/pic.png"alt="图片" class="img-circle">

<img src="img/pic.png"alt="图片" class="img-thumbnail">

//响应式图片

<img src="img/pic.png"alt="图片" class="img-responsive">

 

 

5      栅格系统

 

【学习要点:移动设备优先、布局容器、栅格系统】

 

《主要学习一下Bootstrap 的栅格系统,提供了一套响应式、移动设备优先的流式栅格系统。》

 

5.1    移动设备优先

在HTML5 的项目中,我们做了移动端的项目。它有一份非常重要的meta,用于设置屏

幕和设备等宽以及是否运行用户缩放,及缩放比例的问题。

//分别为:屏幕宽度和设备一致、初始缩放比例、最大缩放比例和禁止用户缩放

<meta name="viewport"content="width=device-width, initial-scale=1,

maximum-scale=1, user-scalable=no">

 

==布局容器:

//固定宽度

<div class="container">

...

</div>

//100%宽度

<divclass="container-fluid">

...

</div>

栅格系统中,浏览器会随着屏幕的大小的增减自动分配最多12 列。通过一系列的行(row)

与列(column)的组合来创建页面布局。工作原理如下:

1.“行(row)”必须包含在.container(固定宽度)或.container-fluid (100%

宽度)中,以便为其赋予合适的排列(aligment)和内补(padding)。

2.通过“行(row)”在水平方向创建一组“列(column)”。

3.你的内容应当放置于“列(column)”内,并且,只有“列(column)”可以作为

行(row)”的直接子元素。

4.类似.row 和.col-xs-4 这种预定义的类,可以用来快速创建栅格布局。

Bootstrap 源码中定义的mixin 也可以用来创建语义化的布局。

5.通过为“列(column)”设置padding 属性,从而创建列与列之间的间隔(gutter)。

通过为.row 元素设置负值margin 从而抵消掉为.container 元素设置的padding,

也就间接为“行(row)”所包含的“列(column)”抵消掉了padding。

6.负值的margin 就是下面的示例为什么是向外突出的原因。在栅格列中的内容排成

一行。

7.栅格系统中的列是通过指定1 到12 的值来表示其跨越的范围。例如,三个等宽的列

可以使用三个.col-xs-4 来创建。

8.如果一“行(row)”中包含了的“列(column)”大于12,多余的“列(column)”

所在的元素将被作为一个整体另起一行排列。

9.栅格类适用于与屏幕宽度大于或等于分界点大小的设备, 并且针对小屏幕设备覆

盖栅格类。因此,在元素上应用任何.col-md-* 栅格类适用于与屏幕宽度大于或等于分

界点大小的设备,并且针对小屏幕设备覆盖栅格类。因此,在元素上应用任何.col-lg-*

不存在,也影响大屏幕设备。

//创建一个响应式行

<div class="container">

<div class="row">

...

</div>

</div>

 

//为了显示明显的CSS

.a {

height: 100px;

background-color: #eee;

border:1px solid #ccc;

}

 

//总列数都是12,每列分配多列

<div class="container">

<div class="row">

<div class="col-md-4a">1-4</div>

<div class="col-md-4a">5-8</div>

<div class="col-md-4a">9-12</div>

</div>

<div class="row">

<div class="col-md-8a">1-8</div>

<div class="col-md-4a">9-12</div>

</div>

</div>

 

5.2    栅格参数表

如上图所示,栅格系统最外层区分了四种宽度的浏览器:

【超小屏(<768px)《自动》:col-xs-】《超小屏幕-手机(<768px)》:最大列宽-自动

【小屏(>=768px)《阀值:750px》:col-sm-】《小屏幕:平板(>=768px)》:最大列宽-~62px;

【中屏(>=992px)《970px》:col-md-】《中屏:桌面显示器(>=992px)》:最大列宽-~81px;

【大屏(>=1200px)《1170px》:col-lg-】《大屏:大桌面显示器(>=1200px)》:最大列宽-~97px;

《而内层.container 容器的自适应宽度为:自动、750px、970px 和1170px。自动的意思为,如果你是手机屏幕,则全面独占一行显示。》

【公共属性:《列数(column:12)》、槽(gutter)宽:30px(左右15px)、可嵌套:是、偏(offsets)移:是、列排序:是】

 

//四种屏幕分类全部激活

<div class="container">

<div class="row">

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

<div class="col-lg-3 col-md-4col-sm-6 col-xs-12 a">4</div>

</div>

</div>

 

//有时我们可以设置列偏移,让中间保持空隙【col-md-offset-1】

<div class="container">

<div class="row">

<div class="col-md-8a">8</div>

<div class="col-md-3col-md-offset-1 a">3</div>

</div>

</div>

 

//也可以嵌套,嵌满也是12 列

<div class="container">

<div class="row">

<div class="col-md-9 a">

<div class="col-md-8a">1-8</div>

<div class="col-md-4a">9-12</div>

</div>

<div class="col-md-3 a">

11-12

</div>

</div>

</div>

 

//可以把两个列交换位置,push 向左移动,pull 向右移动【col-md-push-3】

<div class="container">

<div class="row">

<div class="col-md-9 col-md-push-3a">9</div>

<div class="col-md-3 col-md-pull-9a">3</div>

</div>

</div>

 

6      辅组类和响应式工具

 

【学习要点:辅组类、响应式工具】

《主要学习一下Bootstrap 的辅组类和响应式工具,辅助类提供了一组类来辅组页面设计,而响应式工具则利用媒体查询显示或隐藏某些内容。》

 

==辅助类:《Bootstrap 在布局方面提供了一些细小的辅组样式,用于文字颜色以及背景色的设置、显示关闭图标等等。》

 

6.1    情景文本颜色

【text-muted:柔和灰】

【text-primary:主要蓝】

【text-success:成功绿】

【text-info:信息蓝】

【text-warning:警告黄】

【text-danger:危险红】

 

6.2    情景背景色

【bg-primary:主要蓝】

【bg-success:成功绿】

【bg-info:信息蓝】

【bg-warning:警告黄】

【bg-danger:危险红】

 

6.3    关闭按钮

<button type="button"class="close">&times;</button>

 

6.4    三角符号

<spanclass="caret"></span>

 

6.5    快速浮动

<div class="pull-left">左边</div>

<div class="pull-right">右边</div>

注:这个浮动其实就是float,只不过使用了!important 加强了优先级。

 

6.6    块级居中

<div class="center-block">居中</div>

注:就是margin:x auto;并且设置了display:block;。

 

6.7    清理浮动

<divclass="clearfix"></div>

注:这个div 可以放在需要清理浮动区块的前面即可。

 

6.8    显示和隐藏

<div class="show">show</div>

<divclass="hidden">hidden</div>

 

==响应式工具:

 

《在媒体查询时,针对不同的屏幕大小,有时需要显示和隐藏部分内容。响应式工具类,就提供了这种解决方案。》

//超小屏幕激活显示

<div class="visible-xs-blocka">Bootstrap</div>

//超小屏幕激活隐藏

<div class="hidden-xsa">Bootstrap</div>

注:对于显示的内容,有三种变体,分别为:block、inline-block、inline。

【display 属性:block--此元素将显示为块级元素,此元素前后会带有换行符。】

【display 属性:inline-block--行内块元素】

【display 属性:inline--默认。此元素会被显示为内联元素,元素前后没有换行符。】

 

7      图标菜单按钮组件

 

【学习要点:小图标组件、下拉菜单组件、按钮组组件、按钮式下拉菜单】

 

7.1    小图标组件

 

《Bootstrap 提供了免费的263 个小图标(数了两次),具体可以参考中文官网的组件链接:

                  http://v3.bootcss.com/components/#glyphicons。部分图标如下:》

 

可以使用<i>或<span>标签来配合使用,具体如下:

//使用小图标

<i class="glyphiconglyphicon-star"></i>

<span class="glyphiconglyphicon-star"></span>

//也可以结合按钮

<button class="btn btn-defaultbtn-lg">

<span class="glyphiconglyphicon-star"></span>

</button>

 

7.2    下拉菜单组件

 

《下拉菜单,就是点击一个元素或按钮,触发隐藏的列表显示出来。》

<div class="dropdown">

<button class="btnbtn-default" data-toggle="dropdown">

下拉菜单

<spanclass="caret"></span>

</button>

<ul class="dropdown-menu">

<li><a href="#">首页</a></li>

<li><a href="#">资讯</a></li>

<li><a href="#">产品</a></li>

<li><a href="#">关于</a></li>

</ul>

</div>

 

按钮和菜单需要包裹在.dropdown 的容器里,而作为被点击的元素按钮需要设置

data-toggle="dropdown"才能有效。对于菜单部分,设置class="dropdown-menu"才能

自动隐藏并添加固定样式。设置class="caret"表示箭头,可上可下。

//设置向上触发

<div class="dropup">

//菜单项居右对齐,默认值是dropdown-menu-left

<ul class="dropdown-menudropdown-menu-right">

//设置菜单的标题,不要加超链接

<liclass="dropdown-header">网站导航</li>

//设置菜单的分割线

<liclass="divider"></li>

//设置菜单的禁用项

<li class="disabled"><ahref="#">产品</a></li>

//让菜单默认显示

<div class="dropdown open">

 

7.3    按钮组组件

 

《按钮组就是多个按钮集成在一个容器里形成独有的效果。》

//基本格式

<div class="btn-group">

<button type="button"class="btn btn-default">左</button>

<button type="button"class="btn btn-default">中</button>

<button type="button"class="btn btn-default">右</button>

</div>

 

//将多个按钮组整合起来便于管理

<div class="btn-toolbar">

<div class="btn-group">

<button type="button"class="btn btn-default">左</button>

<button type="button"class="btn btn-default">中</button>

<button type="button"class="btn btn-default">右</button>

</div>

<div class="btn-group">

<button type="button"class="btn btn-default">1</button>

<button type="button"class="btn btn-default">2</button>

<button type="button"class="btn btn-default">3</button>

</div>

 

//设置按钮组大小                          

<div class="btn-groupbtn-group-lg">

<div class="btn-group>

<div class="btn-groupbtn-group-sm">

<div class="btn-groupbtn-group-xs">

</div>

 

//嵌套一个分组,比如下拉菜单

<div class="btn-group">

<button type="button"class="btn btn-default">左</button>

<button type="button"class="btn btn-default">中</button>

<button type="button"class="btn btn-default">右</button>

<div class="btn-group">

<button class="btn btn-defaultdropdown-toggle"

data-toggle="dropdown">

下拉菜单

<spanclass="caret"></span>

</button>

<ul class="dropdown-menu">

<li><a href="#">首页</a></li>

<li><a href="#">资讯</a></li>

<li><a href="#">产品</a></li>

<li><a href="#">关于</a></li>

</ul>

</div>

</div>

注意:这里<div>中并没有实现class="dropdown",通过源码分析知道嵌套本身已经

有定位就不需要再设置。而右边的圆角只要多加一个class="dropdown-toggle"即可。

 

//设置按钮组垂直排列

<divclass="btn-group-vertical">

 

//设置两端对齐按钮组,使用<a>标签

<divclass="btn-group-justified">

<a type="button"class="btn btn-default">左</a>

<a type="button"class="btn btn-default">中</a>

<a type="button"class="btn btn-default">右</a>

</div>

 

7.4    按钮式下拉菜单

这个下拉菜单其实和第二个知识点一样,只不过,这个是在群组里,不需要<div>声明

class="dropdown"。

//群组按钮下拉菜单

<div class="btn-group">

<button type="button"class="btn btn-default dropdown-toggle"

data-toggle="dropdown">

下拉菜单

<spanclass="caret"></span>

</button>

<ul class="dropdown-menu">

<li><a href="#">首页</a></li>

<li><a href="#">资讯</a></li>

<li><a href="#">产品</a></li>

<li><a href="#">关于</a></li>

</ul>

</div>

//分裂式按钮下拉菜单

<div class="btn-group">

<button type="button"class="btn btn-default">下拉菜单</button>

<button type="button"class="btn btn-default dropdown-toggle"

data-toggle="dropdown">

<spanclass="caret"></span>

</button>

<ul class="dropdown-menu">

<li><a href="#">首页</a></li>

<li><a href="#">资讯</a></li>

<li><a href="#">产品</a></li>

<li><a href="#">关于</a></li>

</ul>

</div>

//向上弹出式

<div class="btn-groupdropup">

 

8      输入框和导航组件

 

【学习要点:输入框组件、导航组件、导航条组件】:《主要学习一下Bootstrap 的两个个组件功能:输入框组件和导航导航条组件。》

 

8.1    输入框组件

《文本输入框就是可以在<input>元素前后加上文字或按钮,可以实现对表单控件的扩展。》

 

//在左侧添加文字

<div class="input-group">

<spanclass="input-group-addon">@</span>

<input type="text" class="form-control">

</div>

 

//在右侧添加文字

<div class="input-group">

<input type="text"class="form-control">

<spanclass="input-group-addon">@163.com</span>

</div>

 

//在两侧添加文字

<div class="input-group">

<spanclass="input-group-addon">$</span>

<input type="text" class="form-control">

<spanclass="input-group-addon">.00</span>

</div>

 

//设置尺寸,另外三种分别是默认、xs、sm

<div class="input-groupinput-group-lg">

 

//左侧使用复选框和单选框

<div class="input-group">

<spanclass="input-group-addon"><inputtype="checkbox"></span>

<input type="text"class="form-control">

</div>

<div class="input-group">

<spanclass="input-group-addon"><inputtype="radio"></span>

<input type="text"class="form-control">

</div>

 

//左侧使用按钮

<div class="input-group">

<spanclass="input-group-btn">

<button type="button" class="btnbtn-default">按钮</button>

</span>

<input type="text"class="form-control">

</div>

 

//左侧使用下拉菜单或分列式

<div class="input-group">

<spanclass="input-group-btn">

<button class="btn btn-defaultdropdown-toggle"

data-toggle="dropdown">

 

8.2    下拉菜单

<span class="caret"></span>

</button>

<ul class="dropdown-menu">

<liclass="dropdown-header">网站导航</li>

<li><a href="#">首页</a></li>

<li><a href="#">资讯</a></li>

<li class="divider"><ahref="#">产品</a></li>

<li class="disabled"><ahref="#">关于</a></li>

</ul>

</span>

<input type="text"class="form-control">

</div>

 

 

8.3    导航组件

 

Bootstrap 提供了一组导航组件,用于实现Web 页面的栏目操作。

 

//基本导航标签页

<ul class="nav nav-tabs">

<li class="active"><ahref="#">首页</a></li>

<li><a href="#">资讯</a></li>

<li><a href="#">产品</a></a></li>

<li><a href="#">关于</a></li>

</ul>

 

//胶囊式导航

<ul class="nav nav-pills">

 

//垂直胶囊式导航

<ul class="nav nav-pillsnav-stacked">

 

//导航两端对齐

<ul class="nav nav-tabsnav-justified">

 

//禁用导航中的项目

<li class="disabled"><ahref="#">关于</a></li>

 

//带下拉菜单的导航

<ul class="nav nav-tabs">

<li class="active"><ahref="#">首页</a></li>

<li><a href="#">资讯</a></li>

<li class="dropdown">

<a href="#"class="dropdown-toggle" data-toggle="dropdown">

下拉菜单

<spanclass="caret"></span>

</a>

<ul class="dropdown-menu">

<li><a href="#">菜单一</a></li>

<li><a href="#">菜单二</a></li>

</ul>

</li>

</ul>

 

8.4    导航条组件

 

导航条是网站中作为导航页头的响应式基础组件。

 

//基本格式

<nav class="navbarnavbar-default">

...

</nav>

 

//反色调导航

<nav class="navbarnavbar-inverse">

...

</nav>

 

//基本导航条,包含标题和列表

<nav class="navbarnavbar-default">

<div class="container">

<div class="navbar-header">

<a href="#"class="navbar-brand">标题</a>

</div>

<ul class="nav navbar-nav">

<li class="active"><ahref="#">首页</a></li>

<li><a href="#">资讯</a></li>

<li class="disabled"><ahref="#">产品</a></li>

<li><a href="#">关于</a></li>

</ul>

</div>

</nav>

 

//导航条中使用表单

<form action=""class="navbar-form navbar-left">

<div class="input-group">

<input type="text"class="form-control">

<spanclass="input-group-btn">

<button type="submit"class="btn btn-default">提交</button>

</span>

</div>

</form>

 

//导航中使用按钮

<button class="btn btn-defaultnavbar-btn">按钮</button>

 

//导航中使用对齐方式,left 和right

<button class="btn btn-defaultnavbar-btn navbar-right">按钮</button>

 

//导航中使用一段文本

<p class="navbar-text">我是一段文本</p>

 

//非导航链接,一般需要置入文本区域内

<a href="#"class="navbar-link">非导航链接</a>

 

//将导航固定在顶部,下面的内容会自动上移

<nav class="navbar navbar-defaultnavbar-fixed-top">

 

//将导航补丁在底部

<nav class="navbar navbar-defaultnavbar-fixed-bottom">

 

//静态导航,和页面等宽的导航条,去掉了圆角

<nav class="navbar navbar-defaultnavbar-static-top">

 

 

9      路径分页标签和徽章组件

 

【学习要点:路径组件、分页组件、标签组件、徽章组件】

 

9.1    路径组件

 

路径组件也叫做面包屑导航。

//面包屑导航

<ol class="breadcrumb">

<li><a href="#">首页</a></li>

<li><a href="#">产品列表</a></li>

<li class="active">韩版2015 年羊绒毛衣</li>

</ol>

 

9.2    分页组件

 

分页组件可以提供带有展示页面的功能。

//默认分页

<ul class="pagination">

<li><ahref="#">&laquo;</a></li>

<li><ahref="#">1</a></li>

<li><ahref="#">2</a></li>

<li><ahref="#">3</a></li>

<li><ahref="#">4</a></li>

<li><ahref="#">5</a></li>

<li><ahref="#">&raquo;</a></li>

</ul>

 

//首选项和禁用

<li class="active"><ahref="#">1</a></li>        

<li class="disabled"><ahref="#">2</a></li>

 

//设置尺寸,四种lg、默认、sm 和xs

<ul class="paginationpagination-lg">

 

//翻页效果

<ul class="pager">

<li><a href="#">上一页</a></li>

<li><a href="#">下一页</a></li>

</ul>

 

//对齐翻页链接

<ul class="pager">

<li class="previous"><ahref="#">上一页</a></li>

<li class="next"><ahref="#">下一页</a></li>

</ul>

 

//翻页项禁用

<li class="previousdisabled"><a href="#">上一页</a></li>

 

 

9.3    标签

 

//在文本后面带上标签

<h3>标签<spanclass="label label-default">new</span></h3>

//不同色调的标签

<h3>标签<spanclass="label label-primary">new</span></h3>

<h3>标签<spanclass="label label-success">new</span></h3>

<h3>标签<spanclass="label label-info">new</span></h3>

<h3>标签<spanclass="label label-warning">new</span></h3>

<h3>标签<spanclass="label label-danger">new</span></h3>

 

 

9.4    徽章

 

//未读信息数量徽章

<a href="#">信息<spanclass="badge">10</span></a>

 

//按钮中使用徽章

<button class="btnbtn-success">

提交<span class="badge">3</span>

</button>

 

//激活状态自动适配色调

<ul class="nav nav-pills">

<li class="active">

<a href="#">首页<spanclass="badge">2</span></a>

</li>

<li><a href="#">资讯</a></li>

</ul>

 

10            巨幕页头缩略图和警告框组件

 

【学习要点:巨幕组件、页头组件、缩略图组件、警告框组件】

 

10.1       巨幕组件

【巨幕组件主要是展示网站的关键性区域。】

 

//在固定的范围内,有圆角

<div class="container">

<div class="jumbotron">

<h2>网站标题</h2>

<p>这是一个学习性的网站!</p>

<p><a href="#"class="btn btn-default">更多内容</a></p>

</div>

</div>

 

//100%全屏,没有圆角

<div class="jumbotron">

<div class="container">

<h2>网站标题</h2>

<p>这是一个学习性的网站!</p>

<p><a href="#"class="btn btn-default">更多内容</a></p>

</div>

</div>

 

10.2       缩略图组件

 

//缩略图配合响应式

<div class="container">

<div class="row">

<div class="col-xs-6 col-md-3col-sm-4">

<div class="thumbnail">

<img src="img/pic.png"alt="">

</div>

</div>

<div class="col-xs-6 col-md-3col-sm-4">

<div class="thumbnail">

<img src="img/pic.png"alt="">

</div>

</div>

<div class="col-xs-6 col-md-3col-sm-4">

<div class="thumbnail">

<img src="img/pic.png"alt="">

</div>

</div>

<div class="col-xs-6 col-md-3col-sm-4">

<div class="thumbnail">

<img src="img/pic.png"alt="">

</div>

</div>

</div>

</div>

//自定义内容

<div class="container">

<div class="row">

<div class="col-xs-6 col-md-3col-sm-4">

<div class="thumbnail">

<img src="img/pic.png"alt="">

<div class="caption">

<h3>图文并茂</h3>

<p>这是一个图片结合文字的缩略图</p>

<p><a href="#"class="btn btn-default">进入</a></p>

</div>

</div>

</div>

<div class="col-xs-6 col-md-3col-sm-4">

<div class="thumbnail">

<img src="img/pic.png"alt="">

<div class="caption">

<h3>图文并茂</h3>

<p>这是一个图片结合文字的缩略图</p>

<p><a href="#"class="btn btn-default">进入</a></p>

</div>

</div>

</div>

<div class="col-xs-6 col-md-3col-sm-4">

<div class="thumbnail">

<img src="img/pic.png"alt="">

<div class="caption">

<h3>图文并茂</h3>

<p>这是一个图片结合文字的缩略图</p>

<p><a href="#"class="btn btn-default">进入</a></p>

</div>

</div>

</div>

<div class="col-xs-6 col-md-3col-sm-4">

<div class="thumbnail">

<img src="img/pic.png"alt="">

<div class="caption">

<h3>图文并茂</h3>

<p>这是一个图片结合文字的缩略图</p>

<p><a href="#"class="btn btn-default">进入</a></p>

</div>

</div>

</div>

</div>

</div>

 

10.3       警告框组件

 

警告框组件是一组预定义消息。

//基本警告框

<div class="alertalert-success">Bootstrap</div>

<div class="alertalert-info">Bootstrap</div>

<div class="alert alert-warning">Bootstrap</div>

<div class="alertalert-danger">Bootstrap</div>

 

//带关闭的警告框

<div class="alertalert-success">

Bootstrap

<button type="button"class="close" data-dismiss="alert">

<span>&times;</span>

</button>

</div>

 

//自动适配的超链接

<div class="alert alert-success">

Bootstrap,请到官网 <ahref="#" class="alert-link">下载</a>

</div>

 

11            进度条媒体对象和Well 组件

 

【学习要点:Well 组件、进度条组件、媒体对象组件】

 

11.1       Well 组件

 

这个组件可以实现简单的嵌入效果。

//嵌入效果

<div class="well">

Bootstrap

</div>

//有lg 和sm 两种可选值

<div class="well well-lg">

Bootstrap

</div>

 

 

11.2       进度条组件

 

进度条组件为当前工作流程或动作提供时时反馈。

 

//基本进度条

<div class="progress">

<div class="progress-bar"style="width: 60%;">60%</div>

</div>

 

//最低值进度条

<div class="progress">

<div class="progress-bar"style="min-width:20px">0%</div>

</div>

 

//结合情景的进度条       <!-- //结合情景的进度条 背景颜色:progress-bar-warning/info/success/warning/danger-->

<div class="progress">

<div class="progress-barprogress-bar-success"

style="min-width:20px;width:60%">60%</div>

</div>

 

//条纹状,IE10+支持

<div class="progress">

<div class="progress-barprogress-bar-success

progress-bar-striped"style="min-width:20px;width:60%">60%</div>

</div>

 

//动画效果

<div class="progress">

<div class="progress-barprogress-bar-success progress-bar-striped

active"style="min-width:20px;width:60%">60%</div>

</div>

 

//堆叠效果

<div class="progress">

<div class="progress-barprogress-bar-success"

style="min-width:20px;width:35%">35%</div>

<div class="progress-barprogress-bar-warning"

style="min-width:20px;width:20%">20%</div>

<div class="progress-barprogress-bar-danger"

style="min-width:20px;width:10%">10%</div>

</div>

 

11.3       媒体对象组件

 

《媒体对象可以包含图片、视频或音频等媒体,以达到对象和文本组合显示的样式效果。》

 

//基本实例

<div class="media">

<div class="media-left">

<img src="img/small.png"alt="" class="media-object">

</div>

<div class="media-body">

<h4 class="media-heading">标题</h4>

<p>企鹅(学名:Spheniscidae):有“海洋之舟”美称的企鹅是一种最古老

的游禽,它们很可能在地球穿上冰甲之前,就已经在南极安家落户。全世界的企鹅共有17

种,大多数都分布在南半球。主要生活在南半球,属于企鹅目,企鹅科。特征为不能飞翔;

脚生于身体最下部,故呈直立姿势;趾间有蹼;跖行性(其他鸟类以趾着地);前肢成鳍状;

羽毛短,以减少摩擦和湍流;羽毛间存留一层空气,用以保温。背部黑色,腹部白色。各个

种的主要区别在于头部色型和个体大小。</p>

</div>

</div>

 

//媒体对象列表

<ul class="media-list">

<li class="media">

//将每个media 存放在media-body内后即可

...代码较多,具体看视频

</li>

</ul>

 

12            列表组面板和嵌入组件

 

【学习要点:列表组组件、面板组件、响应式嵌入组件】

 

12.1       列表组组件

 

列表组组件用于显示一组列表的组件。

 

//基本实例

<ul class="list-group">

<liclass="list-group-item">1.这是起始</li>

<li class="list-group-item">2.这是第二条数据</li>

<liclass="list-group-item">3.这是第三排信息</li>

<liclass="list-group-item">4.这是末尾</li>

</ul>

 

//列表项带勋章

<liclass="list-group-item">1.这是起始

<spanclass="badge">10</span></li>

 

//链接和首选

<div class="list-group">

<a href="#" class="list-group-itemactive">1.这是起始

<spanclass="badge">10</span></a>

<a href="#"class="list-group-item">2.这是第二条数据</a>

<a href="#"class="list-group-item">3.这是第三排信息</a>

<a href="#"class="list-group-item">4.这是末尾</a>

</div>

 

//按钮式列表

<div class="list-group">

<button class="list-group-itemactive">1.这是起始<span

class="badge">10</span></button>

<buttonclass="list-group-item">2.这是第二条数据</button>

<buttonclass="list-group-item">3.这是第三排信息</button>

<buttonclass="list-group-item">4.这是末尾</button>

</div>

 

//设置项目被禁用

class="list-group-item disabled"

 

//情景类

<li class="list-group-itemlist-group-item-success">

3.这是第三排信息</li>

 

//定制内容

<div class="list-group">

<a href="#"class="list-group-item active">

<h4>内容标题</h4>

<pclass="list-group-item-text">这里是相关内容详情!</p>

</a>

<a href="#"class="list-group-item">

<h4>内容标题</h4>

<pclass="list-group-item-text">这里是相关内容详情!</p>

</a>

<a href="#"class="list-group-item">

<h4>内容标题</h4>

<pclass="list-group-item-text">这里是相关内容详情!</p>

</a>

</div>

 

12.2       面板组件

 

面板组件就是一个存放内容的容器组件。

 

//基本实例

<div class="panelpanel-default">

<div class="panel-body">

这里是详细内容区!

</div>

</div>

 

//带标题容器的面板

<div class="panelpanel-default">

<div class="panel-heading">

面板标题

</div>

<div class="panel-body">

这里是详细内容区!

</div>

</div>

//也可以设置标题元素

<div class="panel-heading">

<h3 class="panel-title">面板标题</h3>

</div>

 

//带注脚的面板

<div class="panel-footer">

这里是底部

</div>

 

//情景效果:default、success、info、warning、danger、primary

<div class="panelpanel-success">

 

//表格类面板

<div class="panelpanel-default">

<div class="panel-heading">

表格标题

</div>

<div class="panel-body">

<p>这里是表格标题的详细内容!</p>

</div>

<table class="table">

<tr>

<th>1</th>

<th>2</th>

<th>3</th>

</tr>

<tr>

<td>1</td>

<td>2</td>

<td>3</td>

</tr>

</table>

</div>

 

//列表类面板

<div class="panelpanel-default">

<div class="panel-heading">

表格标题

</div>

<div class="panel-body">

<p>这里是表格标题的详细内容!</p>

</div>

<ul class="list-group">

<liclass="list-group-item">1.这里是首页</li>

<liclass="list-group-item">2.这里是第二个项目</li>

<liclass="list-group-item">3.这里是第三个项目</li>

<liclass="list-group-item">4.这里是第四个项目</li>

</ul>

</div>

 

12.3       响应式嵌入组件

 

根据被嵌入内容的外部容器的宽度,自动创建一个固定的比例,从而让浏览器自动确定内容的尺寸,能够在各种设备上缩放。

这些规则可以直接用于<iframe>、<embed>、<video>和<object>元素。

 

//16:9 响应式:

 

<div class="embed-responsiveembed-responsive-16by9">

<embed width="100%"height="100%"

src="http://www.tudou.com/v/OUG5JBZ8udc/&bid=05&rpid=50797543&resourceI

d=50797543_05_05_99/v.swf"type="application/x-shockwave-flash"

allowscriptaccess="always"allowfullscreen="true" wmode="opaque"></embed>

</div>

 

//4:3 响应式:

 

<div class="embed-responsiveembed-responsive-4by3">

<embed width="100%"height="100%"

src="http://www.tudou.com/v/OUG5JBZ8udc/&bid=05&rpid=50797543&resourceI

d=50797543_05_05_99/v.swf"type="application/x-shockwave-flash"

allowscriptaccess="always"allowfullscreen="true" wmode="opaque"></embed>

</div>

 

13            模态框插件

 

【学习要点:基本使用、用法说明】

 

《主要学习一下Bootstrap 中的模态框插件,这是一款交互式网站非常常见的弹窗功能插件。》

 

13.1       基本使用

 

使用模态框的弹窗组件需要三层div 容器元素,分别为modal(模态声明层)、dialog(窗口声明层)、content(内容层)。在内容层里面,还有三层,分别

为header(头部)、body(主体)、footer(注脚)。

 

//基本实例

<!-- 模态声明,show 表示显示-->

<div class="modal show"tabindex="-1">

 

<!-- 窗口声明-->

<div class="modal-dialog">

 

<!-- 内容声明-->

<div class="modal-content">

 

<!-- 头部-->

<div class="modal-header">

<button type="button"class="close"

data-dismiss="modal">

<span>&times;</span>

</button>

<h4 class="modal-title">会员登录</h4>

</div>

 

<!-- 主体-->

<div class="modal-body">

<p>暂时无法登录会员</p>

</div>

 

<!-- 注脚-->

<div class="modal-footer">

<button type="button"class="btn btn-default">

注册</button>

<button type="button"class="btn btn-primary">

登录</button>

</div>

</div>

</div>

</div>

 

《如果想让模态框自动隐藏,然后通过点击按钮弹窗,那么需要做如下操作。》

 

//模态框去掉show,增加一个id

<div class="modal"id="myModal">

 

//点击触发模态框显示

<button class="btn btn-primarybtn-lg"

data-toggle="modal"data-target="#myModal">

点击弹窗

</button>

 

//弹窗的大小有三种,默认情况下是正常,还有lg(大)和sm(小)

<div class="modal-dialogmodal-lg">

<div class="modal-dialogsm-lg">

 

//可设置淡入淡出效果

<div class="modal fade"id="myModal">

 

//在主体部分使用栅格系统中的流体

<!-- 主体-->

<div class="modal-body">

<divclass="container-fluid">

<div class="row">

<div class="col-md-4">1</div>

<divclass="col-md-4">1</div>

<divclass="col-md-4">1</div>

</div>

</div>

</div>

 

13.2       用法说明

 

《基本使用介绍结束之后,我们就来看下插件的各种重要用法。所有的插件,都是基于JavaScript/jQuery 的。

   那么,就有四个要素:用法、参数、方法和事件。》

 

1.用法:

 

第一种:可以通过data 属性

//data-toggle

data-toggle="modal"data-target="#myModal"

data-toggle 表示触发类型

data-target 表示触发的节点

 

如果不是使用<button>,而是<a>,其中data-target 也可以使用href="#myModal"取代。

当然,我们建议使用data-target。除了data-toggle 和data-target 两个声明属性外,还有一些可以用选项。

 

13.3       参数

 

《可以通过在HTML 元素上设置data-*的属性声明来控制效果。》

 

【属性名称】【类型】【默认值】【描述】

 

【data---backdrop----布尔值或'static'----true---

     默认值true,表示背景存在黑灰透明遮罩,且单击空白背景可关闭弹窗;

     如果为false,表示背景不存在黑灰透明遮罩,且点击空白背景不可关闭弹窗;

     如果是字符串'static',表示背景存在黑灰透明遮罩,且点击空白不可关闭弹窗。】

 

【data-keyboard---布尔值---true---

     如果是true,按esc 键会关闭窗口;

     如果是false,按esc 键会不会关闭。】

 

【data-show---布尔值---true

     如果是true,初始化时,默认显示;

     如果是false,初始化时,默认隐藏。】

 

【href---url路径---空值---

    如果值不是以#号开头,则表示一个url 地址,加载url 内容到modal-content容器里,并只加载一次。

    如果是#号,就是取代data-target的方法。】

 

//空白背景且点击不关闭

data-backdrop="false"

 

//按下esc 不关闭

data-keyboard="false"

 

//初始化隐藏,如果是按钮点击触发,第一次点击则无法显示,第二次显示。

data-show="false"

 

//加载一次index.html 到容器内

href="index.html"

 

 

《当然,也可以在JavaScript 直接设置。》

【属性名称】【类型】【默认值】【描述】

 

【data---backdrop----布尔值或'static'----true---

     默认值true,表示背景存在黑灰透明遮罩,且单击空白背景可关闭弹窗;

     如果为false,表示背景不存在黑灰透明遮罩,且点击空白背景不可关闭弹窗;

     如果是字符串'static',表示背景存在黑灰透明遮罩,且点击空白不可关闭弹窗。】

 

【data-keyboard---布尔值---true---

     如果是true,按esc 键会关闭窗口;

     如果是false,按esc 键会不会关闭。】

 

【data-show---布尔值---true

     如果是true,初始化时,默认显示;

     如果是false,初始化时,默认隐藏。】

 

【remote---url路径---空值---

    远程获取指定内容填充到modal-content容器内。

//通过jQuery 方式声明

$('#myModal').modal({

show : true,

backdrop : false,

keyboard : false,

remote : 'index.html',

});

 

13.4       方法

 

《如果说,默认不显示弹窗,那么怎么才能通过点击前后弹窗呢?》

 

【参数名称】【使用方法】【描述】

【toggle----.modal('toggle');----触发时,反转切换弹窗状态】

【show---.modal('show');-----触发时,显示弹窗】

【hide---.modal('hide');----触发时,关闭弹窗】

 

//点击显示弹窗

$('#btn').on('click', function () {

$('#myModal').modal('show');

});

 

13.5       事件

《模态框支持4 种时间,分别对应弹出前、弹出后、关闭前和关闭后。》

【事件类型】【描述】

【show.bs.modal-----在show 方法调用时立即触发。】

【shown.bs.modal----在模态框完全显示出来,并且等CSS 动画完成之后触发。】

【hide.bs.modal-----在hide 方法调用时,但还未关闭隐藏时触发。】

【hidden.bs.modal---在模态框完全隐藏之后,并且等CSS 动画完成之后触发。】

 

$('#myModal').on('show.bs.modal', function() {

alert('在show 方法调用时立即触发!');

});

$('#myModal').on('shown.bs.modal', function() {

alert('在模态框显示完毕后触发!');

});

$('#myModal').on('hide.bs.modal', function() {

alert('在hide 方法调用时立即触发!');

});

$('#myModal').on('hiden.bs.modal', function() {

alert('在模态框显示完毕后触发!');

});

$('#myModal').on('loaded.bs.modal',function () {

alert('远程数据加载完毕后触发!');

});

  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值