BootStrap栅格系统、表单样式与按钮样式源码解析


Posted in Javascript onJanuary 20, 2017

栅格系统

1、栅格系统介绍

Bootstrap 提供了一套响应式、移动设备优先的流式栅格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列。

Bootstrap的栅格系统,由一个行(.row)和多个列构成。

栅格系统用于通过一系列的行(row)与列(column)的组合来创建页面布局,你的内容就可以放入这些创建好的网页布局中。具体的数据(文字、图片等都可以)放入列当中。

注意:栅格系统,必须放在.container(固定宽度)或.container-fluid(100% 宽度)中,以便为其赋予合适的排列(aligment)和内补(padding)。

如果一“行(row)”中包含了的“列(column)”大于 12,多余的“列(column)”所在的元素将被作为一个整体另起一行排列。

2、栅格系统参数

BootStrap栅格系统、表单样式与按钮样式源码解析

实例:从堆叠到水平排列

使用单一的一组 .col-md-* 栅格类,就可以创建一个基本的栅格系统,在手机和平板设备上一开始是堆叠在一起的(超小屏幕到小屏幕这一范围),在桌面(中等)屏幕设备上变为水平排列。所有“列(column)必须放在 ” .row 内。

<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>

BootStrap栅格系统、表单样式与按钮样式源码解析

实例:移动设备和桌面屏幕

是否不希望在小屏幕设备上所有列都堆叠在一起?那就使用针对超小屏幕和中等屏幕设备所定义的类吧,即 .col-xs-* 和 .col-md-*。请看下面的实例,研究一下这些是如何工作的。

<!-- Stack the columns on mobile by making one full-width and the other half-width -->
<div class="row">
 <div class="col-xs-12 col-md-8">.col-xs-12 .col-md-8</div>
 <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>

<!-- Columns start at 50% wide on mobile and bump up to 33.3% wide on desktop -->
<div class="row">
 <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
 <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
 <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>

<!-- Columns are always 50% wide, on mobile and desktop -->
<div class="row">
 <div class="col-xs-6">.col-xs-6</div>
 <div class="col-xs-6">.col-xs-6</div>
</div>

BootStrap栅格系统、表单样式与按钮样式源码解析

实例:手机、平板、桌面

在上面案例的基础上,通过使用针对平板设备的 .col-sm-* 类,我们来创建更加动态和强大的布局吧。

<div class="row">
 <div class="col-xs-12 col-sm-6 col-md-8">.col-xs-12 .col-sm-6 .col-md-8</div>
 <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>
<div class="row">
 <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
 <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
 <!-- Optional: clear the XS cols if their content doesn't match in height -->
 <div class="clearfix visible-xs-block"></div>
 <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
</div>

BootStrap栅格系统、表单样式与按钮样式源码解析

实例:多余的列(column)将另起一行排列

如果在一个 .row 内包含的列(column)大于12个,包含多余列(column)的元素将作为一个整体单元被另起一行排列。

<div class="row">
 <div class="col-xs-9">.col-xs-9</div>
 <div class="col-xs-4">.col-xs-4<br>Since 9 + 4 = 13 > 12, this 4-column-wide div gets wrapped onto a new line as one contiguous unit.</div>
 <div class="col-xs-6">.col-xs-6<br>Subsequent columns continue along the new line.</div>
</div>

BootStrap栅格系统、表单样式与按钮样式源码解析

列偏移

使用 .col-md-offset-* 类可以将列向右侧偏移。这些类实际是通过使用 * 选择器为当前元素增加了左侧的边距(margin)。例如,.col-md-offset-4 类将 .col-md-4 元素向右侧偏移了4个列(column)的宽度。

<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-3">.col-md-6 .col-md-offset-3</div>
</div>

BootStrap栅格系统、表单样式与按钮样式源码解析

嵌套列

列嵌套:就是在某个栏中,再嵌套一个完整的栅格系统。

为了使用内置的栅格系统将内容再次嵌套,可以通过添加一个新的 .row 元素和一系列 .col-sm-* 元素到已经存在的 .col-sm-* 元素内。被嵌套的行(row)所包含的列(column)的个数不能超过12(其实,没有要求你必须占满12列)。

BootStrap栅格系统、表单样式与按钮样式源码解析

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

BootStrap栅格系统、表单样式与按钮样式源码解析

列排序

通过使用 .col-md-push-* 和 .col-md-pull-* 类就可以很容易的改变列(column)的顺序。
.col-md-push-n 向右移n列!
.col-md-pull-n 向左移n列!
注意!!!这个是绝对定位,也就是其他列不动!这个列会和其他列重叠!

<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>

BootStrap栅格系统、表单样式与按钮样式源码解析

看一个完整的实例:

<!DOCTYPE html>
<html>

 <head>
 <meta charset="UTF-8">
 <meta http-equiv="X-UA-Compatible" content="IE=edge">
 <meta name="viewport" content="width=device-width, initial-scale=1">

 <link rel="stylesheet" href="bootstrap-3.3.7-dist/css/bootstrap.min.css" />
 <!--判断IE9 用来支持HTML5 
 html5shiv.min.js-没有那个元素,就创建那个元素
 respond.min.js支持响应式布局的
 -->
 <!--[if lt IE 9]> 
 <script src="js/html5shiv.min.js"></script>
 <script src="js/respond.min.js"></script>
 <![endif]-->
 <title>BootStrap基础入门</title>
 </head>

 <body style="background-color: #CCCCCC;">
 <div class="container" style="background-color: #FFFFFF;">
 <div class="row">
 <div class="col-md-4" style="border: 1px solid #D9534F;">
 应中国共产党中央委员会总书记中央委员会总书记、中华人中央委员会总书记、中华人中央委员会总书记、中华人中央委员会总书记、中华人、中华人民共和国主席习近平的邀请,越南共产党中央委员会总书记阮富仲于2015年4月7日至10日对中华人民共和国进行正式访问。访问期间,中共中央总书记、国家主席习近平与阮富仲总书记举行会谈。中共中央政治局常委、国务院总理李克强,中共中央政治局常委、全国人大常委会委员长张德江,中共中央政治局常委、全国政协主席俞正声分别会见阮富仲总书记。达成广泛共识。也对促进本地区和世界的和平、稳定、合作与发展产生了积极影响。续发挥好中越双边合作指导委员会等两党两国间交流合作机制的作用,统筹推进合作,协调解决问题,服务于两国人民利益。实施好《落实中越全面战略合作伙伴关系行动计划》,推动两国各领域务实合作取得新进展。
 </div>
 <div class="col-md-4" style="border: 1px solid #D9534F;">
 应中国共产党国中央委员会总书记阮富仲于2015年4月7日至10日对中华人民共和国进行正式访问。访问期间,中共中央总书记、国家主席习近平与阮富仲总书记举行会谈。中共中央政治局常委、国务院总理李克强,中共中央政治局常委、全国人大常委会委员长张德江,中共中央政治局常委、全国政协主席俞正声分别会见阮富仲总书记。达成广泛共识。也对促进本地区和世界的和平、稳定、合作与发展产生了积极影响。续发挥好中越双边合作指导委员会等两党两国间交流合作机制的作用,统筹推进合作,协调解决问题,服务于两国人民利益。实施好《落实中越全面战略合作伙伴关系行动计划》,推动两国各领域务实合作取得新进展。
 </div>
 <div class="col-md-4" style="border: 1px solid #D9534F;">
 应中国共产党中央委员会总书记、中华人民共和国主席习近平的邀请,越南共产党中央委员会总书记阮富仲于2015年4月7日至10日对中华人民共和国进行正式访问。访问期间,中共中央总书记、国家主席习近平与阮富仲总书记举行会谈。中共中央政治局常委、国务院总理李克强,中共中央政治局常委、全国人大常委会委员长张德江,中共中央政治局常委、全国政协主席俞正声分别会见阮富仲总书记。达成广泛共识。也对促进本地区和世界的和平、稳定、合作与发展产生了积极影响。续发挥好中越双边合作指导委员会等两党两国间交流合作机制的作用,统筹推进合作,协调解决问题,服务于两国人民利益。实施好《落实中越全面战略合作伙伴关系行动计划》,推动两国各领域务实合作取得新进展。
 </div>
 </div>

 <div class="row">
 <div class="col-md-8" style="border: 1px solid #D9534F;">
 应中国共产党中央委员会总书记中央委员会总书记、中华人中央委员会总书记、中华人中央委员会总书记、中华人中央委员会总书记、中华人、中华人民共和国主席习近平的邀请,越南共产党中央委员会总书记阮富仲于2015年4月7日至10日对中华人民共和国进行正式访问。访问期间,中共中央总书记、国家主席习近平与阮富仲总书记举行会谈。中共中央政治局常委、国务院总理李克强,中共中央政治局常委、全国人大常委会委员长张德江,中共中央政治局常委、全国政协主席俞正声分别会见阮富仲总书记。达成广泛共识。也对促进本地区和世界的和平、稳定、合作与发展产生了积极影响。续发挥好中越双边合作指导委员会等两党两国间交流合作机制的作用,统筹推进合作,协调解决问题,服务于两国人民利益。实施好《落实中越全面战略合作伙伴关系行动计划》,推动两国各领域务实合作取得新进展。
 </div>
 <div class="col-md-4" style="border: 1px solid #D9534F;">
 应中国共产党中央委员会总书记、中华人民共和国主席习近平的邀请,越南共产党中央委员会总书记阮富仲于2015年4月7日至10日对中华人民共和国进行正式访问。访问期间,中共中央总书记、国家主席习近平与阮富仲总书记举行会谈。中共中央政治局常委、国务院总理李克强,中共中央政治局常委、全国人大常委会委员长张德江,中共中央政治局常委、全国政协主席俞正声分别会见阮富仲总书记。达成广泛共识。也对促进本地区和世界的和平、稳定、合作与发展产生了积极影响。续发挥好中越双边合作指导委员会等两党两国间交流合作机制的作用,统筹推进合作,协调解决问题,服务于两国人民利益。实施好《落实中越全面战略合作伙伴关系行动计划》,推动两国各领域务实合作取得新进展。
 </div>
 </div>

 <div class="row">
 <div class="col-md-9" style="border: 1px solid #D9534F;">
 应中国共产党中央委员会总书记中央委员会总书记、中华人中央委员会总书记、中华人中央委员会总书记、中华人中央委员会总书记、中华人、中华人民共和国主席习近平的邀请,越南共产党中央委员会总书记阮富仲于2015年4月7日至10日对中华人民共和国进行正式访问。访问期间,中共中央总书记、国家主席习近平与阮富仲总书记举行会谈。中共中央政治局常委、国务院总理李克强,中共中央政治局常委、全国人大常委会委员长张德江,中共中央政治局常委、全国政协主席俞正声分别会见阮富仲总书记。达成广泛共识。也对促进本地区和世界的和平、稳定、合作与发展产生了积极影响。续发挥好中越双边合作指导委员会等两党两国间交流合作机制的作用,统筹推进合作,协调解决问题,服务于两国人民利益。实施好《落实中越全面战略合作伙伴关系行动计划》,推动两国各领域务实合作取得新进展。
 </div>
 <div class="col-md-6" style="border: 1px solid #D9534F;">
 应中国共产党中央委员会总书记、中华人民共和国主席习近平的邀请,越南共产党中央委员会总书记阮富仲于2015年4月7日至10日对中华人民共和国进行正式访问。访问期间,中共中央总书记、国家主席习近平与阮富仲总书记举行会谈。中共中央政治局常委、国务院总理李克强,中共中央政治局常委、全国人大常委会委员长张德江,中共中央政治局常委、全国政协主席俞正声分别会见阮富仲总书记。达成广泛共识。也对促进本地区和世界的和平、稳定、合作与发展产生了积极影响。续发挥好中越双边合作指导委员会等两党两国间交流合作机制的作用,统筹推进合作,协调解决问题,服务于两国人民利益。实施好《落实中越全面战略合作伙伴关系行动计划》,推动两国各领域务实合作取得新进展。
 </div>
 </div>
 <!-- -- 
 作者:chenhaoxiang@chaojijuhui.com
 时间:2017-01-18
 描述:列向右偏移
 -->
 <div class="row">
 <div class="col-md-4" style="border: 1px solid #D9534F;">
 应中国共产党中央委员会总书记中央委员会总书记、中华人中央委员会总书记、中华人中央委员会总书记、中华人中央委员会总书记、中华人、中华人民共和国主席习近平的邀请,越南共产党中央委员会总书记阮富仲于2015年4月7日至10日对中华人民共和国进行正式访问。访问期间,中共中央总书记、国家主席习近平与阮富仲总书记举行会谈。中共中央政治局常委、国务院总理李克强,中共中央政治局常委、全国人大常委会委员长张德江,中共中央政治局常委、全国政协主席俞正声分别会见阮富仲总书记。达成广泛共识。也对促进本地区和世界的和平、稳定、合作与发展产生了积极影响。续发挥好中越双边合作指导委员会等两党两国间交流合作机制的作用,统筹推进合作,协调解决问题,服务于两国人民利益。实施好《落实中越全面战略合作伙伴关系行动计划》,推动两国各领域务实合作取得新进展。
 </div>
 <div class="col-md-offset-4 col-md-4" style="border: 1px solid #D9534F;">
 应中国共产党中央委员会总书记、中华人民共和国主席习近平的邀请,越南共产党中央委员会总书记阮富仲于2015年4月7日至10日对中华人民共和国进行正式访问。访问期间,中共中央总书记、国家主席习近平与阮富仲总书记举行会谈。中共中央政治局常委、国务院总理李克强,中共中央政治局常委、全国人大常委会委员长张德江,中共中央政治局常委、全国政协主席俞正声分别会见阮富仲总书记。达成广泛共识。也对促进本地区和世界的和平、稳定、合作与发展产生了积极影响。续发挥好中越双边合作指导委员会等两党两国间交流合作机制的作用,统筹推进合作,协调解决问题,服务于两国人民利益。实施好《落实中越全面战略合作伙伴关系行动计划》,推动两国各领域务实合作取得新进展。
 </div>
 </div>

 <!--
 作者:chenhaoxiang@chaojijuhui.com
 时间:2017-01-18
 描述:列嵌套
 -->
 <div class="row">
 <div class="col-md-4" style="border: 1px solid #D9534F;">
 应中国共产党中央委员会总书记中央委员会总书记、中华人中央委员会总书记、中华人中央委员会总书记、中华人中央委员会总书记、中华人、中华人民共和国主席习近平的邀请,越南共产党中央委员会总书记阮富仲于2015年4月7日至10日对中华人民共和国进行正式访问。访问期间,中共中央总书记、国家主席习近平与阮富仲总书记举行会谈。中共中央政治局常委、国务院总理李克强,中共中央政治局常委、全国人大常委会委员长张德江,中共中央政治局常委、全国政协主席俞正声分别会见阮富仲总书记。达成广泛共识。也对促进本地区和世界的和平、稳定、合作与发展产生了积极影响。续发挥好中越双边合作指导委员会等两党两国间交流合作机制的作用,统筹推进合作,协调解决问题,服务于两国人民利益。实施好《落实中越全面战略合作伙伴关系行动计划》,推动两国各领域务实合作取得新进展。
 </div>
 <div class="col-md-8" style="border: 1px solid #D9534F;">
 应中国共产党中央委员会总书记、中华人民共和国主席习近平的邀请,越南共产党中央委员会总书记阮富仲于2015年4月7日至10日对中华人民共和国进行正式访问。访问期间,中共中央总书记、国家主席习近平与阮富仲总书记举行会谈。中共中央政治局常委、国务院总理李克强,中共中央政治局常委、全国人大常委会委员长张德江,中共中央政治局常委、全国政协主席俞正声分别会见阮富仲总书记。达成广泛共识。也对促进本地区和世界的和平、稳定、合作与发展产生了积极影响。续发挥好中越双边合作指导委员会等两党两国间交流合作机制的作用,统筹推进合作,协调解决问题,服务于两国人民利益。实施好《落实中越全面战略合作伙伴关系行动计划》,推动两国各领域务实合作取得新进展。
 <!--
 作者:chenhaoxiang@chaojijuhui.com
 时间:2017-01-18
 描述:嵌套栅格系统
 -->
 <div class="row">
 <div class="col-md-6" style="background-color: #204D74;height: 150px;"></div>
 <div class="col-md-6" style="background-color: #31B0D5;height: 100px;"></div>
 </div>
 </div>
 </div>

 <!--
 作者:chenhaoxiang@chaojijuhui.com
 时间:2017-01-18
 描述:列排序
 -->
 <div class="row">
 <div class="col-md-6 col-md-push-5" style="background-color: #204D74;height: 150px;"></div>
 <div class="col-md-6" style="background-color: #31B0D5;height: 100px;"></div>
 </div>

 </div>

 <script type="text/javascript" src="js/jquery.slim.min.js"></script>
 <script type="text/javascript" src="bootstrap-3.3.7-dist/js/bootstrap.min.js"></script>
 </body>

</html>

整个效果都在:

BootStrap栅格系统、表单样式与按钮样式源码解析

表单样式

说明

.form-group表单组样式:将<label>和表单元素包含其中,可以获得更好的排列。
.form-control表单元素样式:常用于<input>、<textarea>、<select>元素。
.form-inline内联表单样式(用于form元素):可以使元素一行排列。
.checkbox复选框样式
.radio单选框样式
.disabled可以禁用单选框或复选项的文本。 disabled=”disabled”
.form-horizontal水平排列的表单(用于form元素,类似row)。
.sr-only:可以用于隐藏元素。
.checkbox-inline 控制多个复选框元素在同一行显示。
.radio-inline控制多个单选框元素在同一行显示。

添加额外的图标

你还可以针对校验状态为输入框添加额外的图标。只需设置相应的 .has-feedback 类并添加正确的图标即可。

反馈图标只处理带 <input class="form-control"> 这个class的input

图标、label 和输入控件组

对于不带有 label 标签的输入框以及右侧带有附加组件的输入框组,需要手动为其图标定位。为了让所有用户都能访问你的网站,我们强烈建议为所有输入框添加 label 标签。如果你不希望将 label 标签展示出来,可以通过添加 sr-only 类来实现。如果的确不能添加 label 标签,请调整图标的 top 值。对于输入框组,请根据你的实际情况调整 right 值。

<div class="form-group has-success has-feedback">
 <label class="control-label" for="inputSuccess2">Input with success</label>
 <input type="text" class="form-control" id="inputSuccess2">
 <span class="glyphicon glyphicon-ok form-control-feedback"></span>
</div>
<div class="form-group has-warning has-feedback">
 <label class="control-label" for="inputWarning2">Input with warning</label>
 <input type="text" class="form-control" id="inputWarning2">
 <span class="glyphicon glyphicon-warning-sign form-control-feedback"></span>
</div>
<div class="form-group has-error has-feedback">
 <label class="control-label" for="inputError2">Input with error</label>
 <input type="text" class="form-control" id="inputError2">
 <span class="glyphicon glyphicon-remove form-control-feedback"></span>
</div>

BootStrap栅格系统、表单样式与按钮样式源码解析

实例

<!DOCTYPE html>
<html>

 <head>
 <meta charset="UTF-8">
 <meta http-equiv="X-UA-Compatible" content="IE=edge">
 <meta name="viewport" content="width=device-width, initial-scale=1">

 <link rel="stylesheet" href="bootstrap-3.3.7-dist/css/bootstrap.min.css" />
 <!--判断IE9 用来支持HTML5 
 html5shiv.min.js-没有那个元素,就创建那个元素
 respond.min.js支持响应式布局的
 -->
 <!--[if lt IE 9]> 
 <script src="js/html5shiv.min.js"></script>
 <script src="js/respond.min.js"></script>
 <![endif]-->
 <title>BootStrap基础入门</title>
 </head>

 <body style="background-color: #CCCCCC;">
 <div class="container" style="background-color: #FFFFFF;">
 <form class="form-horizontal">
 <!--表单中的栅栏系统用form-horizontal,其他的用row -->
 <h1>用户注册表单</h1>
 <div class="form-group">
 <!--control-label控制label和input之间的水平距离 -->
 <label class="col-md-2 control-label" for="username">用户名</label>
 <div class="col-md-10">
 <input type="text" class="form-control" id="username" placeholder="请输入用户名" disabled="disabled"/>
 </div>
 </div>
 <div class="form-group">
 <label class="col-md-2 control-label" for="password">密码</label>
 <div class="col-md-10">
 <input type="password" class="form-control" id="password" placeholder="请输入密码" />
 </div>
 </div>
 <!--
 作者:chenhaoxiang@chaojijuhui.com
 时间:2017-01-18
 描述:sr-only -隐藏元素
 -->
 <div class="form-group sr-only">
 <label class="col-md-2 control-label" for="email">邮箱</label>
 <div class="col-md-10">
 <input type="email" class="form-control" id="email" placeholder="请输入邮箱" />
 </div>
 </div>
 <div class="form-group">
 <label class="col-md-2 control-label">上传图片</label>
 <div class="col-md-10">
 <input type="file" />
 <!--
 作者:chenhaoxiang@chaojijuhui.com
 时间:2017-01-18
 描述:class="help-block" 帮助信息以块显示- 间距变长了点,颜色变淡了。
 -->
 <p class="help-block">上传的图片类型只能是:.jpg/.gif/.png</p>
 </div>
 </div>
 <div class="form-group">
 <label class="col-md-2 control-label">兴趣爱好:</label>
 <div class="col-md-10">
 <label class="checkbox-inline">
 <input type="checkbox" value="画画" />画画
 </label>
 <label class="checkbox-inline">
 <input type="checkbox" value="音乐" />音乐
 </label>
 <label class="checkbox-inline">
 <input type="checkbox" value="体育" />体育
 </label>
 <label class="checkbox-inline">
 <input type="checkbox" value="唱歌" />唱歌
 </label>
 </div>
 </div>
 <div class="form-group">
 <label class="col-md-2 control-label">学历:</label>
 <div class="col-md-10">
 <label class="radio-inline">
 <input type="radio" name="xueli"/>小学
 </label>
 <label class="radio-inline">
 <input type="radio" name="xueli"/>初中
 </label>
 <label class="radio-inline">
 <input type="radio" name="xueli"/>高中
 </label>
 <label class="radio-inline">
 <input type="radio" name="xueli"/>大专
 </label>
 <label class="radio-inline">
 <input type="radio" name="xueli"/>本科
 </label>
 </div>
 </div>

 <div class="form-group">
 <label class="col-md-2 control-label">个人简介:</label>
 <div class="col-md-10">
 <textarea class="form-control" rows="5" placeholder="请输入你的个人简介信息"></textarea>
 </div>
 </div>
 <div class="col-md-10 col-md-offset-2">
 <button type="button" class="btn btn-default btn-lg">提交表单</button>
 </div>
 </form>

 </div>

 <script type="text/javascript" src="js/jquery.slim.min.js"></script>
 <script type="text/javascript" src="bootstrap-3.3.7-dist/js/bootstrap.min.js"></script>
 </body>

</html>

BootStrap栅格系统、表单样式与按钮样式源码解析

按钮样式

可作为按钮使用的元素:<a>、<input>、<button>
.btn:按钮的全局样式。<input type = “button” class = “btn”>
预定义样式:.btn-default、.btn-primary、.btn-success、.btn-info、.btn-warning、.btn-danger、.btn-link
.active按钮激活状态、.disabled按钮禁用状态
按钮尺寸:.btn-lg(大按钮)、.btn-sm(小按钮)、.btn-xs(超小按钮)
.btn-block:将按钮拉伸到撑满整个父元素。

预定义样式

<!-- Standard button -->
<button type="button" class="btn btn-default">Default</button>

<!-- Provides extra visual weight and identifies the primary action in a set of buttons -->
<button type="button" class="btn btn-primary">Primary</button>

<!-- Indicates a successful or positive action -->
<button type="button" class="btn btn-success">Success</button>

<!-- Contextual button for informational alert messages -->
<button type="button" class="btn btn-info">Info</button>

<!-- Indicates caution should be taken with this action -->
<button type="button" class="btn btn-warning">Warning</button>

<!-- Indicates a dangerous or potentially negative action -->
<button type="button" class="btn btn-danger">Danger</button>

<!-- Deemphasize a button by making it look like a link while maintaining button behavior -->
<button type="button" class="btn btn-link">Link</button>

BootStrap栅格系统、表单样式与按钮样式源码解析

尺寸

按钮尺寸:.btn-lg(大按钮)、.btn-sm(小按钮)、.btn-xs(超小按钮)

通过给按钮添加 .btn-block 类可以将其拉伸至父元素100%的宽度,而且按钮也变为了块级(block)元素。

激活状态

当按钮处于激活状态时,其表现为被按压下去(底色更深、边框夜色更深、向内投射阴影)。对于 <button> 元素,是通过 :active 状态实现的。对于 <a> 元素,是通过 .active 类实现的。然而,你还可以将 .active 应用到 <button> 上,并通过编程的方式使其处于激活状态。

button 元素

由于 :active 是伪状态,因此无需额外添加,但是在需要让其表现出同样外观的时候可以添加 .active 类。

<button type="button" class="btn btn-primary btn-lg active">Primary button</button>
<button type="button" class="btn btn-default btn-lg active">Button</button>

BootStrap栅格系统、表单样式与按钮样式源码解析

链接(<a>)元素

可以为基于 <a> 元素创建的按钮添加 .active 类。
这里的role=”button” , role是无障碍设计里的标签(属性role的存在,是为了告诉Accessibility类应用(比如屏幕朗读程序,为盲人提供的访问网络的便利程序),这是一个按钮。在html5元素内,标签本身就是有语义的,因此role是不必添加的,至少是不推荐的,但是bootstrap的案例内很多都是有类似的属性和声明的,目的是为了兼容老版本的浏览器(用户代理))

<a href="#" class="btn btn-primary btn-lg active" role="button">Primary link</a>
<a href="#" class="btn btn-default btn-lg active" role="button">Link</a>

显示效果和上面的图片一样!

禁用状态

为 <button> 元素添加 disabled 属性,使其表现出禁用状态。

<button type="button" class="btn btn-lg btn-primary" disabled="disabled">Primary button</button>
<button type="button" class="btn btn-default btn-lg" disabled="disabled">Button</button>

为基于 <a> 元素创建的按钮添加 .disabled 类。

<a href="#" class="btn btn-primary btn-lg disabled" role="button">Primary link</a>
<a href="#" class="btn btn-default btn-lg disabled" role="button">Link</a>

两个完整实例源码链接:https://github.com/chenhaoxiang/BootStrap/tree/master/day2

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery实现可收缩展开的级联菜单实例代码
Nov 27 Javascript
jquery.ajax的url中传递中文乱码问题的解决方法
Feb 07 Javascript
javascript实现3D切换焦点图
Oct 16 Javascript
JavaScript常用正则函数用法示例
Jan 23 Javascript
springMVC + easyui + $.ajaxFileUpload实现文件上传注意事项
Apr 23 Javascript
js上传图片预览的实现方法
May 09 Javascript
angular.js中解决跨域问题的三种方式
Jul 12 Javascript
用vue2.0实现点击选中active其他选项互斥的效果
Apr 12 Javascript
微信小程序实现slideUp、slideDown滑动效果及点击空白隐藏功能示例
Dec 11 Javascript
玩转Koa之核心原理分析
Dec 29 Javascript
JQuery 实现文件下载的常用方法分析
Oct 29 jQuery
JavaScript中跨域问题的深入理解
Mar 04 Javascript
Vue开发过程中遇到的疑惑知识点总结
Jan 20 #Javascript
JavaScript简单验证表单空值及邮箱格式的方法
Jan 20 #Javascript
JavaScript基于Dom操作实现查找、修改HTML元素的内容及属性的方法
Jan 20 #Javascript
BootStrap CSS全局样式和表格样式源码解析
Jan 20 #Javascript
BootStrap 图片样式、辅助类样式和CSS组件的实例详解
Jan 20 #Javascript
Javascript DOM事件操作小结(监听鼠标点击、释放,悬停、离开等)
Jan 20 #Javascript
JS中from 表单序列化提交的代码
Jan 20 #Javascript
You might like
JoshChen_web格式编码UTF8-无BOM的小细节分析
2013/08/16 PHP
php冒泡排序、快速排序、快速查找、二维数组去重实例分享
2014/04/24 PHP
一张表搞清楚php is_null、empty、isset的区别
2015/07/07 PHP
Nginx服务器上安装并配置PHPMyAdmin的教程
2015/08/18 PHP
Symfony2框架创建项目与模板设置实例详解
2016/03/17 PHP
php基于dom实现读取图书xml格式数据的方法
2017/02/03 PHP
JavaScript语句可以不以;结尾的烦恼
2007/03/08 Javascript
一个简单的js渐显(fadeIn)渐隐(fadeOut)类
2010/06/19 Javascript
js 文本滚动效果的实例代码
2013/08/17 Javascript
jQuery中:reset选择器用法实例
2015/01/04 Javascript
javascript将DOM节点添加到文档的方法实例分析
2015/08/04 Javascript
jQuery实现的数值范围range2dslider选取插件特效多款代码分享
2015/08/27 Javascript
深入浅析AngularJS中的module(模块)
2016/01/04 Javascript
jQuery插件zTree实现清空选中第一个节点所有子节点的方法
2017/03/08 Javascript
vue分类筛选filter方法简单实例
2017/03/30 Javascript
jQuery获取复选框选中的当前行的某个字段的值
2017/09/15 jQuery
webpack公共组件引用路径简化小技巧
2018/06/15 Javascript
微信小程序实现日历效果
2018/12/28 Javascript
如何使用python爬取csdn博客访问量
2016/02/14 Python
Python+selenium实现自动循环扔QQ邮箱漂流瓶
2018/05/29 Python
python多线程与多进程及其区别详解
2019/08/08 Python
Python turtle库绘制菱形的3种方式小结
2019/11/23 Python
使用keras实现孪生网络中的权值共享教程
2020/06/11 Python
浅谈matplotlib中FigureCanvasXAgg的用法
2020/06/16 Python
python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境
2020/12/14 Python
css3打造一款漂亮的卡哇伊按钮
2013/03/20 HTML / CSS
CSS实现雨滴动画效果的实例代码
2019/10/08 HTML / CSS
英国奢侈皮具品牌:Aspinal of London
2018/09/02 全球购物
JPA的特点
2014/10/25 面试题
高一地理教学反思
2014/01/18 职场文书
秋天的图画教学反思
2014/05/01 职场文书
关于雷锋的演讲稿
2014/05/10 职场文书
入党现实表现材料
2014/12/23 职场文书
职工的安全责任书范文!
2019/07/02 职场文书
如何用JavaScipt测网速
2021/05/09 Javascript
端午节将至,用Python爬取粽子数据并可视化,看看网友喜欢哪种粽子吧!
2021/06/11 Python