本文最后更新于:December 3, 2021 pm
Bootstrap 是最受欢迎的 HTML、CSS 和 JS 框架,用于开发响应式布局、移动设备优先的 WEB 项目。Bootstrap是基于HTML、CSS、JavaScript 开发的简洁、直观、强悍的前端开发框架,使得 Web 开发更加快捷。提供了优雅的HTML和CSS规范。
目录 ** Bootstrap 使用到的某些 HTML 元素和 CSS 属性需要将页面设置为 HTML5 文档类型。 **
1.布局容器 Bootstrap 需要为页面内容和栅格系统包裹一个 .container 容器。提供了两个作此用处的类。注意,由于 padding 等属性的原因,这两种 容器类不能互相嵌套。
1.1 container 类 .container
类用于固定宽度并支持响应式布局的容器。
<div class ="container" > ...</div >
1.2 container-fluid 类 .container-fluid
类用于 100% 宽度,占据全部视口(viewport)的容器。
<div class ="container-fluid" > ...</div >
2.栅格系统 Bootstrap 提供了一套响应式、移动设备优先的流式栅格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列。
2.1 栅格参数 Bootstrap 的栅格系统是在多种屏幕设备上工作。
超小屏幕 手机 (<768px)
小屏幕 平板 (≥768px)
中等屏幕 桌面显示器 (≥992px)
大屏幕 大桌面显示器 (≥1200px)
栅格系统行为
总是水平排列
开始是堆叠在一起的,当大于这些阈值时将变为水平排列C
.container
最大宽度
None (自动)
750px
970px
1170px
类前缀
.col-xs-
.col-sm-
.col-md-
.col-lg-
列(column)数
12
最大列(column)宽
自动
~62px
~81px
~97px
槽(gutter)宽
30px (每列左右均有 15px)
可嵌套
是
偏移(Offsets)
是
列排序
是
2.2 实例 从堆叠到水平排列。注意:** 需要先把下载好的BootStrap中的文件导入。 **
BootStrap官网模板:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 <!doctype html > <html lang ="zh-CN" > <head > <meta charset ="utf-8" > <meta http-equiv ="X-UA-Compatible" content ="IE=edge" > <meta name ="viewport" content ="width=device-width, initial-scale=1" > <title > Bootstrap 101 Template</title > <link rel ="stylesheet" href ="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css" integrity ="sha384-HSMxcRTRxnN+Bdg0JdbxYKrThecOKuH5zCYotlSAcp1+c8xmyTe9GYg1l9a69psu" crossorigin ="anonymous" > </head > <body > <h1 > 你好,世界!</h1 > <script src ="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js" integrity ="sha384-nvAa0+6Qg9clwYCGGPpDQLVpLNn0fRaROjHqs13t4Ggj3Ez50XnGQqc/r8MhnRDZ" crossorigin ="anonymous" > </script > <script src ="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js" integrity ="sha384-aJ21OjlMXNL5UyIl/XNwTMqvzeRMZH2w8c5cRVpzpU8Y5bApTppSuUkhZXN0VxHd" crossorigin ="anonymous" > </script > </body > </html >
需要注意的是:需要修改一个地方,不然网页没有效果。
<link rel ="stylesheet" href ="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css" integrity ="sha384-HSMxcRTRxnN+Bdg0JdbxYKrThecOKuH5zCYotlSAcp1+c8xmyTe9GYg1l9a69psu" crossorigin ="anonymous" > //即,需要将 integrity中的内容删除 <link rel ="stylesheet" href ="css/bootstrap.min.css" crossorigin ="anonymous" >
本地完整实现:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 <!doctype html > <html lang ="zh-CN" > <head > <meta charset ="utf-8" > <meta http-equiv ="X-UA-Compatible" content ="IE=edge" > <meta name ="viewport" content ="width=device-width, initial-scale=1" > <title > Bootstrap Study</title > <link rel ="stylesheet" href ="css/bootstrap.min.css" crossorigin ="anonymous" > <script src ="js/jquery-3.6.0.min.js" integrity ="sha384-nvAa0+6Qg9clwYCGGPpDQLVpLNn0fRaROjHqs13t4Ggj3Ez50XnGQqc/r8MhnRDZ" crossorigin ="anonymous" > </script > <script src ="js/bootstrap.min.js" integrity ="sha384-aJ21OjlMXNL5UyIl/XNwTMqvzeRMZH2w8c5cRVpzpU8Y5bApTppSuUkhZXN0VxHd" crossorigin ="anonymous" > </script > </head > <body > <h1 > 你好,世界!</h1 > <div class ="row" > <div class ="col-md-1" > .col-md-1</div > <div class ="col-md-1" > .col-md-2</div > <div class ="col-md-1" > .col-md-3</div > <div class ="col-md-1" > .col-md-4</div > <div class ="col-md-1" > .col-md-5</div > <div class ="col-md-1" > .col-md-6</div > <div class ="col-md-1" > .col-md-7</div > <div class ="col-md-1" > .col-md-8</div > <div class ="col-md-1" > .col-md-9</div > <div class ="col-md-1" > .col-md-10</div > <div class ="col-md-1" > .col-md-11</div > <div class ="col-md-1" > .col-md-12</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 > </body > </html >
可自行测试查看网页效果。
根据不同的屏幕大小制定不同的方式:这里的代码只写body
中的,head
中的可参考上面的代码。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <body > <h1 > 你好,世界!</h1 > <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 > <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 > <div class ="row" > <div class ="col-xs-6" > .col-xs-6</div > <div class ="col-xs-6" > .col-xs-6</div > </div > </body >
如果在一个 .row
内包含的列(column)大于12个,多余列(column)的元素将作为一个整体单元被另起一行排列。
例如:
<div class ="row" > <div class ="col-xs-9" > .col-xs-9</div > <div class ="col-xs-4" > .col-xs-4</div > <div class ="col-xs-6" > .col-xs-6</div > </div >
2.3 列偏移 使用 .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 >
2.4 列嵌套 为了使用内置的栅格系统将内容再次嵌套,可以通过添加一个新的 .row
元素和一系列 .col-sm-*
元素到已经存在的 .col-sm-*
元素内。被嵌套的行(row)所包含的列(column)的个数不能超过12(其实,没有要求你必须占满12列)。
示例:
<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 >
2.5 列排序 通过使用 .col-md-push-*
和 .col-md-pull-*
类就可以很容易的改变列(column)的顺序。
示例:
<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 >
3.排版 3.1 副标题 在标题内还可以包含 <small>
标签或赋予 .small
类的元素,可以用来标记副标题。使用 <small>
标签包裹,其内的文本将被设置为父容器字体大小的 85%。标题元素中嵌套的 <small>
元素被设置不同的 font-size
。还可以为行内元素赋予 .small
类以代替任何 <small>
元素。
示例:
<h1 > 这是标题1<small > 这是副标题</small > </h1 > <h1 class ="small" > 这是副标题标题</h1 >
3.2 中心内容 通过添加 .lead
类可以让段落突出显示。
示例:
<p class ="lead" > 你好,世界!</p >
3.3 标记文本 使用标签mark
。
示例:
<p > 这是一首<mark > 简单的</mark > 歌</p >
3.4 被删除的文本 对于被删除的文本使用 <del>
标签。
示例:
3.5 无用文本 对于没用的文本使用 <s>
标签。 示例:
3.6 文本对齐 示例:
<p class ="text-left" > Left aligned text.</p > <p class ="text-center" > Center aligned text.</p > <p class ="text-right" > Right aligned text.</p > //测试时为失效<p class ="text-justify" > Justified text.</p > <p class ="text-nowrap" > No wrap text.</p >
3.7 大小写切换 <p class ="text-lowercase" > Lowercased text.</p > <p class ="text-uppercase" > Uppercased text.</p > <p class ="text-capitalize" > Capitalized text.</p >
3.8 缩略语 当鼠标悬停在缩写和缩写词上时就会显示完整内容,Bootstrap 实现了对 HTML 的 <abbr>
元素的增强样式。缩略语元素带有 title
属性,外观表现为带有较浅的虚线框,鼠标移至上面时会变成带有“问号”的指针。如想看完整的内容可把鼠标悬停在缩略语上(对使用辅助技术的用户也可见), 但需要包含 title 属性。
abcdefghijklmno<abbr title ="attribute" > attr</abbr >
3.8.1 首字母缩略语 为缩略语添加 .initialism
类,可以让 font-size 变得稍微小些。
<abbr title ="HyperText Markup Language" class ="initialism" > HTML</abbr >abcdefghijkl
3.9 引用 <blockquote class ="blockquote-reverse" > <p > Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p > <footer > Someone famous in <cite title ="Source Title" > Source Title</cite > </footer > </blockquote >
将任何 HTML 元素包裹在 <blockquote>
中即可表现为引用样式。对于直接引用,建议用 <p>
标签。添加 <footer>
用于标明引用来源。来源的名称可以包裹进 <cite>
标签中。
通过赋予 .blockquote-reverse
类可以让引用呈现内容右对齐的效果。(测试时为失效)
4.表格 4.1 基本实例 为任意 <table>
标签添加 .table
类可以为其赋予基本的样式 — 少量的内补(padding)和水平方向的分隔线。
<table class ="table" > <tr > <td > id</td > <td > name</td > <td > class</td > <td > grade</td > </tr > <tr > <td > 1</td > <td > 2</td > <td > 3</td > <td > 4</td > </tr > </table >
4.2 相间条纹状表格 通过 .table-striped
类可以给 <tbody>
之内的每一行增加斑马条纹样式。(条纹状表格是依赖 :nth-child
CSS 选择器实现的,而这一功能不被 Internet Explorer 8 支持。)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <table class ="table table-striped" > <tr > <td > id</td > <td > name</td > <td > class</td > <td > grade</td > </tr > <tr > <td > 1</td > <td > 2</td > <td > 3</td > <td > 4</td > </tr > <tr > <td > 1</td > <td > 2</td > <td > 3</td > <td > 4</td > </tr > </table >
4.3 带边框的表格 添加 .table-bordered
类为表格和其中的每个单元格增加边框。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <table class ="table table-striped table-bordered" > <tr > <td > id</td > <td > name</td > <td > class</td > <td > grade</td > </tr > <tr > <td > 1</td > <td > 2</td > <td > 3</td > <td > 4</td > </tr > <tr > <td > 1</td > <td > 2</td > <td > 3</td > <td > 4</td > </tr > </table >
4.4 鼠标悬停响应 通过添加 .table-hover
类可以让 <tbody>
中的每一行对鼠标悬停状态作出响应。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <table class ="table table-striped table-bordered table-hover" > <tr > <td > id</td > <td > name</td > <td > class</td > <td > grade</td > </tr > <tr > <td > 1</td > <td > 2</td > <td > 3</td > <td > 4</td > </tr > <tr > <td > 1</td > <td > 2</td > <td > 3</td > <td > 4</td > </tr > </table >
4.5 紧缩表格 通过添加 .table-condensed
类可以让表格更加紧凑,单元格中的内补(padding)均会减半。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <table class ="table table-condensed" > <tr > <td > id</td > <td > name</td > <td > class</td > <td > grade</td > </tr > <tr > <td > 1</td > <td > 2</td > <td > 3</td > <td > 4</td > </tr > <tr > <td > 1</td > <td > 2</td > <td > 3</td > <td > 4</td > </tr > </table >
4.6 表格状态类 通过状态类可以为行或单元格设置颜色。
Class
描述
.active
鼠标悬停在行或单元格上时所设置的颜色
.success
标识成功或积极的动作
.info
标识普通的提示信息或动作
.warning
标识警告或需要用户注意
.danger
标识危险或潜在的带来负面影响的动作
<tr class ="active" > ...</tr > <tr class ="success" > ...</tr > <tr class ="warning" > ...</tr > <tr class ="danger" > ...</tr > <tr class ="info" > ...</tr > <tr > <td class ="active" > ...</td > <td class ="success" > ...</td > <td class ="warning" > ...</td > <td class ="danger" > ...</td > <td class ="info" > ...</td > </tr >
4.7 响应式表格 将任何 .table
元素包裹在 .table-responsive
元素内,即可创建响应式表格,其会在小屏幕设备上(小于768px)水平滚动。当屏幕大于 768px 宽度时,水平滚动条消失。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 <div class ="table-responsive" > <table class ="table table-condensed" > <tr class ="success" > <td > id</td > <td > name</td > <td > class</td > <td > grade</td > </tr > <tr > <td > 1</td > <td > 2</td > <td > 3</td > <td > 4</td > </tr > <tr > <td > 1</td > <td > 2</td > <td > 3</td > <td > 4</td > </tr > </table > </div >
5.表单 5.1 基本实例 单独的表单控件会被自动赋予一些全局样式。所有设置了 .form-control
类的 <input>
、<textarea>
和 <select>
元素都将被默认设置宽度属性为 width: 100%;
。 将 label
元素和前面提到的控件包裹在 .form-group
中可以获得最好的排列。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 <form > <div class ="form-group" > <label for ="exampleInputEmail1" > Email address</label > <input type ="email" class ="form-control" id ="exampleInputEmail1" placeholder ="Email" > </div > <div class ="form-group" > <label for ="exampleInputPassword1" > Password</label > <input type ="password" class ="form-control" id ="exampleInputPassword1" placeholder ="Password" > </div > <div class ="form-group" > <label for ="exampleInputFile" > File input</label > <input type ="file" id ="exampleInputFile" > <p class ="help-block" > Example block-level help text here.</p > </div > <div class ="checkbox" > <label > <input type ="checkbox" > Check me out </label > </div > <button type ="submit" class ="btn btn-default" > Submit</button > </form >
不要将表单组直接和输入框组混合使用。而建议将输入框组嵌套到表单组中使用。
5.2 内联表单 为 <form>
元素添加 .form-inline
类可使其内容左对齐并且表现为 inline-block
级别的控件。只适用于视口(viewport)至少在 768px 宽度时(视口宽度再小的话就会使表单折叠)。
在 Bootstrap 中,输入框和单选/多选框控件默认被设置为 width: 100%;
宽度。在内联表单,我们将这些元素的宽度设置为 width: auto;
,因此,多个控件可以排列在同一行。
一定要添加 label
标签。如果你没有为每个输入控件设置 label
标签,屏幕阅读器将无法正确识别。对于这些内联表单,你可以通过为 label
设置 .sr-only
类将其隐藏。还有一些辅助技术提供label标签的替代方案,比如 aria-label
、aria-labelledby
或 title
属性。如果这些都不存在,屏幕阅读器可能会采取使用 placeholder
属性,如果存在的话,使用占位符来替代其他的标记,但要注意,这种方法是不妥当的。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 //实例一<form class ="form-inline" > <div class ="form-group" > <label for ="exampleInputName2" > Name</label > <input type ="text" class ="form-control" id ="exampleInputName2" placeholder ="Jane Doe" > </div > <div class ="form-group" > <label for ="exampleInputEmail2" > Email</label > <input type ="email" class ="form-control" id ="exampleInputEmail2" placeholder ="jane.doe@example.com" > </div > <button type ="submit" class ="btn btn-default" > Send invitation</button > </form > //实例二<form class ="form-inline" > <div class ="form-group" > <label class ="sr-only" for ="exampleInputEmail3" > Email address</label > <input type ="email" class ="form-control" id ="exampleInputEmail3" placeholder ="Email" > </div > <div class ="form-group" > <label class ="sr-only" for ="exampleInputPassword3" > Password</label > <input type ="password" class ="form-control" id ="exampleInputPassword3" placeholder ="Password" > </div > <div class ="checkbox" > <label > <input type ="checkbox" > Remember me </label > </div > <button type ="submit" class ="btn btn-default" > Sign in</button > </form > //实例三<form class ="form-inline" > <div class ="form-group" > <label class ="sr-only" for ="exampleInputAmount" > Amount (in dollars)</label > <div class ="input-group" > <div class ="input-group-addon" > $</div > <input type ="text" class ="form-control" id ="exampleInputAmount" placeholder ="Amount" > <div class ="input-group-addon" > .00</div > </div > </div > <button type ="submit" class ="btn btn-primary" > Transfer cash</button > </form >
5.3 水平排列的表单 通过为表单添加 .form-horizontal
类,并联合使用 Bootstrap 预置的栅格类,可以将 label
标签和控件组水平并排布局。这样做将改变 .form-group
的行为,使其表现为栅格系统中的行(row),因此就无需再额外添加 .row
了。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 <form class ="form-horizontal" > <div class ="form-group" > <label for ="inputEmail3" class ="col-sm-2 control-label" > Email</label > <div class ="col-sm-10" > <input type ="email" class ="form-control" id ="inputEmail3" placeholder ="Email" > </div > </div > <div class ="form-group" > <label for ="inputPassword3" class ="col-sm-2 control-label" > Password</label > <div class ="col-sm-10" > <input type ="password" class ="form-control" id ="inputPassword3" placeholder ="Password" > </div > </div > <div class ="form-group" > <div class ="col-sm-offset-2 col-sm-10" > <div class ="checkbox" > <label > <input type ="checkbox" > Remember me </label > </div > </div > </div > <div class ="form-group" > <div class ="col-sm-offset-2 col-sm-10" > <button type ="submit" class ="btn btn-default" > Sign in</button > </div > </div > </form >
5.4 输入框 包括大部分表单控件、文本输入域控件,还支持所有 HTML5 类型的输入控件: text
、password
、datetime
、datetime-local
、date
、month
、time
、week
、number
、email
、url
、search
、tel
和 color
。
只有正确设置了 type
属性的输入控件才能被赋予正确的样式。
<input type ="text" class ="form-control" placeholder ="Text input" >
5.4.1 输入框组 在输入域前(后)面添加文本内容或按钮控件。
通过在文本输入框 <input>
前面、后面或是两边加上文字或按钮,可以实现对表单控件的扩展。为 .input-group
赋予 .input-group-addon
或 .input-group-btn
类,可以给 .form-control
的前面或后面添加额外的元素。
基本实例
不支持在输入框的单独一侧添加多个额外元素(.input-group-addon
或 .input-group-btn
)。 不支持在单个输入框组中添加多个表单控件。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 <div class ="input-group" > <span class ="input-group-addon" id ="basic-addon1" > @</span > <input type ="text" class ="form-control" placeholder ="Username" aria-describedby ="basic-addon1" > </div > <div class ="input-group" > <input type ="text" class ="form-control" placeholder ="Recipient's username" aria-describedby ="basic-addon2" > <span class ="input-group-addon" id ="basic-addon2" > @example.com</span > </div > <div class ="input-group" > <span class ="input-group-addon" > $</span > <input type ="text" class ="form-control" aria-label ="Amount (to the nearest dollar)" > <span class ="input-group-addon" > .00</span > </div > <label for ="basic-url" > Your vanity URL</label > <div class ="input-group" > <span class ="input-group-addon" id ="basic-addon3" > https://example.com/users/</span > <input type ="text" class ="form-control" id ="basic-url" aria-describedby ="basic-addon3" > </div >
尺寸(调整大小)
为 .input-group
添加相应的尺寸类,其内部包含的元素将自动调整自身的尺寸。不需要为输入框组中的每个元素重复地添加控制尺寸的类。
<div class ="input-group input-group-lg" > <span class ="input-group-addon" id ="sizing-addon1" > @</span > <input type ="text" class ="form-control" placeholder ="Username" aria-describedby ="sizing-addon1" > </div > <div class ="input-group" > <span class ="input-group-addon" id ="sizing-addon2" > @</span > <input type ="text" class ="form-control" placeholder ="Username" aria-describedby ="sizing-addon2" > </div > <div class ="input-group input-group-sm" > <span class ="input-group-addon" id ="sizing-addon3" > @</span > <input type ="text" class ="form-control" placeholder ="Username" aria-describedby ="sizing-addon3" > </div >
作为额外元素的多选框和单选框
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 <div class ="row" > <div class ="col-lg-6" > <div class ="input-group" > <span class ="input-group-addon" > <input type ="checkbox" aria-label ="..." > </span > <input type ="text" class ="form-control" aria-label ="..." > </div > </div > <div class ="col-lg-6" > <div class ="input-group" > <span class ="input-group-addon" > <input type ="radio" aria-label ="..." > </span > <input type ="text" class ="form-control" aria-label ="..." > </div > </div > </div >
作为额外元素的按钮
为输入框组添加按钮需要额外添加一层嵌套,不是 .input-group-addon
,而是添加 .input-group-btn
来包裹按钮元素。由于不同浏览器的默认样式无法被统一的重新赋值,所以才需要这样做。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 <div class ="row" > <div class ="col-lg-6" > <div class ="input-group" > <span class ="input-group-btn" > <button class ="btn btn-default" type ="button" > Go!</button > </span > <input type ="text" class ="form-control" placeholder ="Search for..." > </div > </div > <div class ="col-lg-6" > <div class ="input-group" > <input type ="text" class ="form-control" placeholder ="Search for..." > <span class ="input-group-btn" > <button class ="btn btn-default" type ="button" > Go!</button > </span > </div > </div > </div >
作为额外元素的按钮式下拉菜单
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 <div class ="row" > <div class ="col-lg-6" > <div class ="input-group" > <div class ="input-group-btn" > <button type ="button" class ="btn btn-default dropdown-toggle" data-toggle ="dropdown" aria-haspopup ="true" aria-expanded ="false" > Action <span class ="caret" > </span > </button > <ul class ="dropdown-menu" > <li > <a href ="#" > Action</a > </li > <li > <a href ="#" > Another action</a > </li > <li > <a href ="#" > Something else here</a > </li > <li role ="separator" class ="divider" > </li > <li > <a href ="#" > Separated link</a > </li > </ul > </div > <input type ="text" class ="form-control" aria-label ="..." > </div > </div > <div class ="col-lg-6" > <div class ="input-group" > <input type ="text" class ="form-control" aria-label ="..." > <div class ="input-group-btn" > <button type ="button" class ="btn btn-default dropdown-toggle" data-toggle ="dropdown" aria-haspopup ="true" aria-expanded ="false" > Action <span class ="caret" > </span > </button > <ul class ="dropdown-menu dropdown-menu-right" > <li > <a href ="#" > Action</a > </li > <li > <a href ="#" > Another action</a > </li > <li > <a href ="#" > Something else here</a > </li > <li role ="separator" class ="divider" > </li > <li > <a href ="#" > Separated link</a > </li > </ul > </div > </div > </div > </div >
作为额外元素的分裂式按钮下拉菜单
<div class ="input-group" > <div class ="input-group-btn" > </div > <input type ="text" class ="form-control" aria-label ="..." > </div > <div class ="input-group" > <input type ="text" class ="form-control" aria-label ="..." > <div class ="input-group-btn" > </div > </div >
5.5 文本域 支持多行文本的表单控件。可根据需要改变 rows
属性。
<textarea class ="form-control" rows ="3" > </textarea >
5.6 下拉菜单 <select class ="form-control" > <option > 1</option > <option > 2</option > <option > 3</option > <option > 4</option > <option > 5</option > </select >
对于标记了 multiple
属性的 <select>
控件来说,默认显示多选项。
<select multiple class ="form-control" > <option > 1</option > <option > 2</option > <option > 3</option > <option > 4</option > <option > 5</option > </select >