基于Bootstrap框架菜鸟入门教程(推荐)


Posted in Javascript onSeptember 17, 2017

Bootstrap菜鸟入门教程

基于Bootstrap框架菜鸟入门教程(推荐)

Bootstrap简介

Bootstrap,来自 Twitter,是目前最受欢迎的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷。

一、栅格系统

栅格系统的工作原理:

“行(row)”必须包含在 .container (固定宽度)或 .container-fluid (100% 宽度)中,以便为其赋予合适的排列(aligment)和内补(padding)。

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

你的内容应当放置于“列(column)”内,并且,只有“列(column)”可以作为行(row)”的直接子元素。

类似 .row 和 .col-xs-4 这种预定义的类,可以用来快速创建栅格布局。Bootstrap 源码中定义的 mixin 也可以用来创建语义化的布局。

通过为“列(column)”设置 padding 属性,从而创建列与列之间的间隔(gutter)。通过为 .row 元素设置负值 margin 从而抵消掉为 .container 元素设置的 padding,也就间接为“行(row)”所包含的“列(column)”抵消掉了padding。

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

栅格系统中的列是通过指定1到12的值来表示其跨越的范围。例如,三个等宽的列可以使用三个 .col-xs-4 来创建。

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

栅格类适用于与屏幕宽度大于或等于分界点大小的设备 , 并且针对小屏幕设备覆盖栅格类。 因此,在元素上应用任何 .col-md-* 栅格类适用于与屏幕宽度大于或等于分界点大小的设备 , 并且针对小屏幕设备覆盖栅格类。 因此,在元素上应用任何 .col-lg-* 不存在, 也影响大屏幕设备。

媒体查询:

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

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

/* 超小屏幕(手机,小于 768px) */
/* 没有任何媒体查询相关的代码,因为这在 Bootstrap 中是默认的(还记得 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框架菜鸟入门教程(推荐)

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

基于Bootstrap框架菜鸟入门教程(推荐)

响应式的列重置

以下实例包含了4个网格,但是我们在小设备浏览时无法确定网格显示的位置。

为了解决这个问题,可以使用 .clearfix class和响应式工具来解决,如下面实例所示:

<div class="container">
 <div class="row" >
  <div class="col-xs-6 col-sm-3" 
   style="background-color: #dedef8;
   box-shadow: inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
   <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
  </div>
  <div class="col-xs-6 col-sm-3" 
  style="background-color: #dedef8;box-shadow: 
  inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
   <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do 
   eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut 
   enim ad minim veniam, quis nostrud exercitation ullamco laboris 
   nisi ut aliquip ex ea commodo consequat.
   </p>
   <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do 
   eiusmod tempor incididunt ut. 
   </p>
  </div>
 
  <div class="clearfix visible-xs"></div>
 
  <div class="col-xs-6 col-sm-3" 
  style="background-color: #dedef8;
  box-shadow:inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
   <p>Ut enim ad minim veniam, quis nostrud exercitation ullamco 
   laboris nisi ut aliquip ex ea commodo consequat. 
   </p>
  </div>
  <div class="col-xs-6 col-sm-3" 
  style="background-color: #dedef8;box-shadow: 
  inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
   <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do 
   eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut 
   enim ad minim 
   </p>
  </div>
 </div>
</div>

基于Bootstrap框架菜鸟入门教程(推荐)

偏移列

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

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

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

<div class="container">
 <h1>Hello, world!</h1>
 <div class="row" >
  <div class="col-xs-6 col-md-offset-3" 
  style="background-color: #dedef8;box-shadow: 
  inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
   <p>Lorem ipsum dolor sit amet, consectetur adipisicing 
   elit.
   </p>
  </div>
 </div>
</div>

基于Bootstrap框架菜鸟入门教程(推荐)

嵌套列

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

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

<div class="container">
 <h1>Hello, world!</h1>
 <div class="row">
  <div class="col-md-3" >
   <h4>第一列</h4>
   <p>
    Lorem ipsum dolor sit amet, consectetur adipisicing elit.
   </p>
  </div>
  <div class="col-md-9" >
   <h4>第二列 - 分为四个盒子</h4>
   <div class="row">
    <div class="col-md-6" >
     <p>
      Consectetur art party Tonx culpa semiotics. Pinterest 
  assumenda minim organic quis.
     </p>
    </div>
    <div class="col-md-6" >
     <p>
       sed do eiusmod tempor incididunt ut labore et dolore magna 
  aliqua. Ut enim ad minim veniam, quis nostrud exercitation 
  ullamco laboris nisi ut aliquip ex ea commodo consequat.
     </p>
    </div>
   </div>
   <div class="row">
    <div class="col-md-6" >
     <p>
      quis nostrud exercitation ullamco laboris nisi ut 
  aliquip ex ea commodo consequat.
     </p>
    </div>
    <div class="col-md-6" >
     <p>
      Lorem ipsum dolor sit amet, consectetur adipisicing elit, 
  sed do eiusmod tempor incididunt ut labore et dolore magna 
  aliqua. Ut enim ad minim.
     </p>
    </div>
   </div>
  </div>
 </div>
</div>

基于Bootstrap框架菜鸟入门教程(推荐)

列排序

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

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

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

<div class="container">
 <h1>Hello, world!</h1>
 <div class="row">
  <p>
   排序前
  </p>
  <div class="col-md-4" >
   我在左边
  </div>
  <div class="col-md-8" >
   我在右边
  </div>
 </div>
 <br>
 <div class="row">
  <p>
   排序后
  </p>
  <div class="col-md-4 col-md-push-8" >
   我在左边
  </div>
  <div class="col-md-8 col-md-pull-4" >
   我在右边
  </div>
 </div>
</div>

基于Bootstrap框架菜鸟入门教程(推荐)

二、Bootstrap 排版

HTML 中的所有标题标签,<h1> 到 <h6> 均可使用。另外,还提供了 .h1 到 .h6 类,为的是给内联(inline)属性的文本赋予标题的样式。

<h1>我是标题1 h1</h1>
<h2>我是标题2 h2</h2>
<h3>我是标题3 h3</h3>
<h4>我是标题4 h4</h4>
<h5>我是标题5 h5</h5>
<h6>我是标题6 h6</h6>

基于Bootstrap框架菜鸟入门教程(推荐)

在标题内还可以包含 <small> 标签或赋予 .small 类的元素,可以用来标记副标题。

如果需要向任何标题添加一个内联子标题,只需要简单地在元素两旁添加 <small>,或者添加 .small class,这样子您就能得到一个字号更小的颜色更浅的文本,如下面实例所示:

<h1>我是标题1 h1. <small>我是副标题1 h1</small></h1>
<h2>我是标题2 h2. <small>我是副标题2 h2</small></h2>
<h3>我是标题3 h3. <small>我是副标题3 h3</small></h3>
<h4>我是标题4 h4. <small>我是副标题4 h4</small></h4>
<h5>我是标题5 h5. <small>我是副标题5 h5</small></h5>
<h6>我是标题6 h6. <small>我是副标题6 h6</small></h6>

基于Bootstrap框架菜鸟入门教程(推荐)

页面主体:Bootstrap 将全局 font-size 设置为 14px,line-height 设置为 1.428。这些属性直接赋予 <body> 元素和所有段落元素。另外,<p> (段落)元素还被设置了等于 1/2 行高(即 10px)的底部外边距(margin)。

<h2>引导主体副本</h2>
<p class="lead">这是一个演示引导主体副本用法的实例。这是一个演示引导主体副本用法的实例。这是一个演示引导主体副本用法的实例。这是一个演示引导主体副本用法的实例。这是一个演示引导主体副本用法的实例。这是一个演示引导主体副本用法的实例。这是一个演示引导主体副本用法的实例。这是一个演示引导主体副本用法的实例。</p>

基于Bootstrap框架菜鸟入门教程(推荐)

列表:

Bootstrap 支持有序列表、无序列表和定义列表。

有序列表:有序列表是指以数字或其他有序字符开头的列表。

无序列表:无序列表是指没有特定顺序的列表,是以传统风格的着重号开头的列表。如果您不想显示这些着重号,您可以使用 class .list-unstyled 来移除样式。您也可以通过使用 class .list-inline 把所有的列表项放在同一行中。

定义列表:在这种类型的列表中,每个列表项可以包含 <dt> 和 <dd> 元素。<dt> 代表 定义术语,就像字典,这是被定义的属于(或短语)。接着,<dd> 是 <dt> 的描述。您可以使用 class dl-horizontal 把 <dl> 行中的属于与描述并排显示。

下面的实例演示了这些类型的列表:

<h4>有序列表</h4>
<ol>
 <li>Item 1</li>
 <li>Item 2</li>
 <li>Item 3</li>
 <li>Item 4</li>
</ol>
<h4>无序列表</h4>
<ul>
 <li>Item 1</li>
 <li>Item 2</li>
 <li>Item 3</li>
 <li>Item 4</li>
</ul>
<h4>未定义样式列表</h4>
<ul class="list-unstyled">
 <li>Item 1</li>
 <li>Item 2</li>
 <li>Item 3</li>
 <li>Item 4</li>
</ul>
<h4>内联列表</h4>
<ul class="list-inline">
 <li>Item 1</li>
 <li>Item 2</li>
 <li>Item 3</li>
 <li>Item 4</li>
</ul>
<h4>定义列表</h4>
<dl>
 <dt>Description 1</dt>
 <dd>Item 1</dd>
 <dt>Description 2</dt>
 <dd>Item 2</dd>
</dl>
<h4>水平的定义列表</h4>
<dl class="dl-horizontal">
 <dt>Description 1</dt>
 <dd>Item 1</dd>
 <dt>Description 2</dt>
 <dd>Item 2</dd>
</dl>

基于Bootstrap框架菜鸟入门教程(推荐)

下表提供了 Bootstrap 更多排版类的实例:

基于Bootstrap框架菜鸟入门教程(推荐)

三、Bootstrap 代码

Bootstrap 允许您以两种方式显示代码:

第一种是 <code> 标签。如果您想要内联显示代码,那么您应该使用 <code> 标签。

For example, <code><section></code> should be wrapped as inline.

基于Bootstrap框架菜鸟入门教程(推荐)

第二种是 <pre> 标签。如果代码需要被显示为一个独立的块元素或者代码有多行,那么您应该使用 <pre> 标签。

<pre><p>Sample text here...</p></pre>

基于Bootstrap框架菜鸟入门教程(推荐)

还可以使用 .pre-scrollable 类,其作用是设置 max-height 为 350px ,并在垂直方向展示滚动条。

基于Bootstrap框架菜鸟入门教程(推荐)

四、Bootstrap 表格

Bootstrap 支持的一些表格元素:

基于Bootstrap框架菜鸟入门教程(推荐)

用于表格的样式

基于Bootstrap框架菜鸟入门教程(推荐)

用于表格的行或者单元格

基于Bootstrap框架菜鸟入门教程(推荐)

基本实例

为任意 <table> 标签添加 .table 类可以为其赋予基本的样式 — 少量的内补(padding)和水平方向的分隔线。这种方式看起来很多余!?但是我们觉得,表格元素使用的很广泛,如果我们为其赋予默认样式可能会影响例如日历和日期选择之类的插件,所以我们选择将此样式独立出来。

<table class="table">
 <caption>基本的表格布局</caption>
 <thead>
 <tr>
  <th>名称</th>
  <th>城市</th>
 </tr>
 </thead>
 <tbody>
 <tr>
  <td>Tanmay</td>
  <td>Bangalore</td>
 </tr>
 <tr>
  <td>Sachin</td>
  <td>Mumbai</td>
 </tr>
 </tbody>
</table>

基于Bootstrap框架菜鸟入门教程(推荐)

条纹表格

通过添加 .table-striped class,您将在 <tbody> 内的行上看到条纹,如下面的实例所示:

<table class="table table-striped">
 <caption>条纹表格布局</caption>
 <thead>
 <tr>
  <th>名称</th>
  <th>城市</th>
  <th>邮编</th>
 </tr>
 </thead>
 <tbody>
 <tr>
  <td>Tanmay</td>
  <td>Bangalore</td>
  <td>560001</td>
 </tr>
 <tr>
  <td>Sachin</td>
  <td>Mumbai</td>
  <td>400003</td>
 </tr>
 <tr>
  <td>Uma</td>
  <td>Pune</td>
  <td>411027</td>
 </tr>
 </tbody>
</table>

基于Bootstrap框架菜鸟入门教程(推荐)

带边框的表格

通过添加 .table-bordered class,您将看到每个元素周围都有边框,且占整个表格是圆角的,如下面的实例所示:

<table class="table table-bordered">
 <caption>边框表格布局</caption>
 <thead>
 <tr>
  <th>名称</th>
  <th>城市</th>
  <th>邮编</th>
 </tr>
 </thead>
 <tbody>
 <tr>
  <td>Tanmay</td>
  <td>Bangalore</td>
  <td>560001</td>
 </tr>
 <tr>
  <td>Sachin</td>
  <td>Mumbai</td>
  <td>400003</td>
 </tr>
 <tr>
  <td>Uma</td>
  <td>Pune</td>
  <td>411027</td>
 </tr>
 </tbody>
</table>

基于Bootstrap框架菜鸟入门教程(推荐)

悬停表格

通过添加 .table-hover class,当指针悬停在行上时会出现浅灰色背景,如下面的实例所示:

<table class="table table-hover">
 <caption>悬停表格布局</caption>
 <thead>
 <tr>
  <th>名称</th>
  <th>城市</th>
  <th>邮编</th>
 </tr>
 </thead>
 <tbody>
 <tr>
  <td>Tanmay</td>
  <td>Bangalore</td>
  <td>560001</td>
 </tr>
 <tr>
  <td>Sachin</td>
  <td>Mumbai</td>
  <td>400003</td>
 </tr>
 <tr>
  <td>Uma</td>
  <td>Pune</td>
  <td>411027</td>
 </tr>
 </tbody>
</table>

基于Bootstrap框架菜鸟入门教程(推荐)

精简表格

通过添加 .table-condensed class,行内边距(padding)被切为两半,以便让表看起来更紧凑,如下面的实例所示。这在想让信息看起来更紧凑时非常有用。

<table class="table table-condensed">
 <caption>精简表格布局</caption>
 <thead>
 <tr>
  <th>名称</th>
  <th>城市</th>
  <th>邮编</th></tr>
 </thead>
 <tbody>
 <tr>
  <td>Tanmay</td>
  <td>Bangalore</td>
  <td>560001</td></tr>
 <tr>
  <td>Sachin</td>
  <td>Mumbai</td>
  <td>400003</td></tr>
 <tr>
  <td>Uma</td>
  <td>Pune</td>
  <td>411027</td></tr>
 </tbody>
</table>

基于Bootstrap框架菜鸟入门教程(推荐)

上下文类

下表中所列出的上下文类允许您改变表格行或单个单元格的背景颜色。

基于Bootstrap框架菜鸟入门教程(推荐)

<table class="table">
 <caption>上下文表格布局</caption>
 <thead>
 <tr>
  <th>产品</th>
  <th>付款日期</th>
  <th>状态</th></tr>
 </thead>
 <tbody>
 <tr class="active">
  <td>产品1</td>
  <td>23/11/2013</td>
  <td>待发货</td></tr>
 <tr class="success">
  <td>产品2</td>
  <td>10/11/2013</td>
  <td>发货中</td></tr>
 <tr class="warning">
  <td>产品3</td>
  <td>20/10/2013</td>
  <td>待确认</td></tr>
 <tr class="danger">
  <td>产品4</td>
  <td>20/10/2013</td>
  <td>已退货</td></tr>
 </tbody>
</table>

基于Bootstrap框架菜鸟入门教程(推荐)

响应式表格

通过把任意的 .table 包在 .table-responsive class 内,您可以让表格水平滚动以适应小型设备(小于 768px)。当在大于 768px 宽的大型设备上查看时,您将看不到任何的差别。

<div class="table-responsive">
 <table class="table">
 <caption>响应式表格布局</caption>
 <thead>
  <tr>
  <th>产品</th>
  <th>付款日期</th>
  <th>状态</th></tr>
 </thead>
 <tbody>
  <tr>
  <td>产品1</td>
  <td>23/11/2013</td>
  <td>待发货</td></tr>
  <tr>
  <td>产品2</td>
  <td>10/11/2013</td>
  <td>发货中</td></tr>
  <tr>
  <td>产品3</td>
  <td>20/10/2013</td>
  <td>待确认</td></tr>
  <tr>
  <td>产品4</td>
  <td>20/10/2013</td>
  <td>已退货</td></tr>
 </tbody>
 </table>
</div>

基于Bootstrap框架菜鸟入门教程(推荐)

五、Bootstrap 表单

基本的表单结构是 Bootstrap 自带的,个别的表单控件自动接收一些全局样式。下面列出了创建基本表单的步骤:

向父 <form> 元素添加 role="form"。

把标签和控件放在一个带有 class .form-group 的 <div> 中。这是获取最佳间距所必需的。

向所有的文本元素 <input>、<textarea> 和 <select> 添加 class ="form-control" 。

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

基于Bootstrap框架菜鸟入门教程(推荐)

内联表单

为 <form> 元素添加 .form-inline 类可使其内容左对齐并且表现为 inline-block 级别的控件。只适用于视口(viewport)至少在 768px 宽度时(视口宽度再小的话就会使表单折叠)。

基于Bootstrap框架菜鸟入门教程(推荐)

<form class="form-inline" role="form">
 <div class="form-group">
 <label class="sr-only" for="name">名称</label>
 <input type="text" class="form-control" id="name" placeholder="请输入名称">
 </div>
 <div class="form-group">
 <label class="sr-only" for="inputfile">文件输入</label>
 <input type="file" id="inputfile">
 </div>
 <div class="checkbox">
 <label>
  <input type="checkbox">请打勾
 </label>
 </div>
 <button type="submit" class="btn btn-default">提交</button>
</form>

基于Bootstrap框架菜鸟入门教程(推荐)

水平表单

水平表单与其他表单不仅标记的数量上不同,而且表单的呈现形式也不同。如需创建一个水平布局的表单,请按下面的几个步骤进行:

向父 <form> 元素添加 class .form-horizontal。

把标签和控件放在一个带有 class .form-group 的 <div> 中。

向标签添加 class .control-label。

<form class="form-horizontal" role="form">
 <div class="form-group">
 <label for="firstname" class="col-sm-2 control-label">名字</label>
 <div class="col-sm-10">
  <input type="text" class="form-control" id="firstname" placeholder="请输入名字">
 </div>
 </div>
 <div class="form-group">
 <label for="lastname" class="col-sm-2 control-label">姓</label>
 <div class="col-sm-10">
  <input type="text" class="form-control" id="lastname" placeholder="请输入姓">
 </div>
 </div>
 <div class="form-group">
 <div class="col-sm-offset-2 col-sm-10">
  <div class="checkbox">
  <label>
   <input type="checkbox">请记住我
  </label>
  </div>
 </div>
 </div>
 <div class="form-group">
 <div class="col-sm-offset-2 col-sm-10">
  <button type="submit" class="btn btn-default">登录</button>
 </div>
 </div>
</form>

基于Bootstrap框架菜鸟入门教程(推荐)

六、Bootstrap 按钮

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

为 <a>、<button> 或 <input> 元素添加按钮类(button class)即可使用 Bootstrap 提供的样式。

以下样式可用于<a>, <button>, 或 <input> 元素上:

基于Bootstrap框架菜鸟入门教程(推荐)

基于Bootstrap框架菜鸟入门教程(推荐)

<!-- 标准的按钮 -->
<button type="button" class="btn btn-default">默认按钮</button>
<!-- 提供额外的视觉效果,标识一组按钮中的原始动作 -->
<button type="button" class="btn btn-primary">原始按钮</button>
<!-- 表示一个成功的或积极的动作 -->
<button type="button" class="btn btn-success">成功按钮</button>
<!-- 信息警告消息的上下文按钮 -->
<button type="button" class="btn btn-info">信息按钮</button>
<!-- 表示应谨慎采取的动作 -->
<button type="button" class="btn btn-warning">警告按钮</button>
<!-- 表示一个危险的或潜在的负面动作 -->
<button type="button" class="btn btn-danger">危险按钮</button>
<!-- 并不强调是一个按钮,看起来像一个链接,但同时保持按钮的行为 -->
<button type="button" class="btn btn-link">链接按钮</button>

基于Bootstrap框架菜鸟入门教程(推荐)

按钮大小

使用 .btn-lg、.btn-sm 或 .btn-xs 就可以获得不同尺寸的按钮。

下表列出了获得各种大小按钮的 class:

基于Bootstrap框架菜鸟入门教程(推荐)

<p>
 <button type="button" class="btn btn-primary btn-lg">大的原始按钮</button>
 <button type="button" class="btn btn-default btn-lg">大的按钮</button>
</p>
<p>
 <button type="button" class="btn btn-primary">默认大小的原始按钮</button>
 <button type="button" class="btn btn-default">默认大小的按钮</button>
</p>
<p>
 <button type="button" class="btn btn-primary btn-sm">小的原始按钮</button>
 <button type="button" class="btn btn-default btn-sm">小的按钮</button>
</p>
<p>
 <button type="button" class="btn btn-primary btn-xs">特别小的原始按钮</button>
 <button type="button" class="btn btn-default btn-xs">特别小的按钮</button>
</p>
<p>
 <button type="button" class="btn btn-primary btn-lg btn-block">块级的原始按钮</button>
 <button type="button" class="btn btn-default btn-lg btn-block">块级的按钮</button>
</p>

基于Bootstrap框架菜鸟入门教程(推荐)

按钮状态

Bootstrap 提供了激活、禁用等按钮状态的 class,下面将进行详细讲解。

激活状态

按钮在激活时将呈现为被按压的外观(深色的背景、深色的边框、阴影)。

下表列出了让按钮元素和锚元素呈激活状态的 class:

基于Bootstrap框架菜鸟入门教程(推荐)

禁用状态

当您禁用一个按钮时,它的颜色会变淡 50%,并失去渐变。

下表列出了让按钮元素和锚元素呈禁用状态的 class:

基于Bootstrap框架菜鸟入门教程(推荐)

按钮标签

您可以在 <a>、<button> 或 <input> 元素上使用按钮 class。但是建议您在 <button> 元素上使用按钮 class,避免跨浏览器的不一致性问题。

下面的实例演示了这点:

<a class="btn btn-default" href="#" rel="external nofollow" role="button">链接</a>
<button class="btn btn-default" type="submit">按钮</button>
<input class="btn btn-default" type="button" value="输入">
<input class="btn btn-default" type="submit" value="提交">

基于Bootstrap框架菜鸟入门教程(推荐)

七、Bootstrap 图片

在 Bootstrap 版本 3 中,通过为图片添加 .img-responsive 类可以让图片支持响应式布局。其实质是为图片设置了 max-width: 100%;、 height: auto; 和 display: block; 属性,从而让图片在其父元素中更好的缩放。

如果需要让使用了 .img-responsive 类的图片水平居中,请使用 .center-block 类,不要用 .text-center

基于Bootstrap框架菜鸟入门教程(推荐)

<img src="cinqueterre.jpg" class="img-responsive" alt="Cinque Terre">

图片形状

通过为 <img> 元素添加以下相应的类,可以让图片呈现不同的形状。

基于Bootstrap框架菜鸟入门教程(推荐)

<img src="..." alt="..." class="img-rounded">
<img src="..." alt="..." class="img-circle">
<img src="..." alt="..." class="img-thumbnail">

基于Bootstrap框架菜鸟入门教程(推荐)

八、Bootstrap 辅助类

文本

以下不同的类展示了不同的文本颜色。如果文本是个链接鼠标移动到文本上会变暗:

基于Bootstrap框架菜鸟入门教程(推荐)

背景

以下不同的类展示了不同的背景颜色。 如果文本是个链接鼠标移动到文本上会变暗:

基于Bootstrap框架菜鸟入门教程(推荐)

其他

基于Bootstrap框架菜鸟入门教程(推荐)

一些实例:

关闭图标

使用通用的关闭图标来关闭模态框和警告框。使用 class close 得到关闭图标。

<p>关闭图标实例
 <button type="button" class="close" aria-hidden="true">
 ×
 </button>
</p>

三角符号

通过使用三角符号可以指示某个元素具有下拉菜单的功能。注意,向上弹出式菜单中的三角符号是反方向的。

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

让内容块居中

为任意元素设置 display: block 属性并通过 margin 属性让其中的内容居中。下面列出的类还可以作为 mixin 使用。

<div class="center-block">...</div>
// Class
.center-block {
 display: block;
 margin-left: auto;
 margin-right: auto;
}

// Usage as a mixin
.element {
 .center-block();
}

显示或隐藏内容

.show 和 .hidden 类可以强制任意元素显示或隐藏(对于屏幕阅读器也能起效)。这些类通过 !important 来避免 CSS 样式优先级问题,就像 quick floats 一样的做法。注意,这些类只对块级元素起作用,另外,还可以作为 mixin 使用。

.hide 类仍然可用,但是它不能对屏幕阅读器起作用,并且从 v3.0.1 版本开始就不建议使用了。请使用 .hidden 或 .sr-only 。

另外,.invisible 类可以被用来仅仅影响元素的可见性,也就是说,元素的 display 属性不被改变,并且这个元素仍然能够影响文档流的排布。

<div class="show">...</div>
<div class="hidden">...</div>
// Classes
.show {
 display: block !important;
}
.hidden {
 display: none !important;
}
.invisible {
 visibility: hidden;
}

// Usage as mixins
.element {
 .show();
}
.another-element {
 .hidden();
}

九、Bootstrap 响应式实用工具

Bootstrap 提供了一些辅助类,以便更快地实现对移动设备友好的开发。这些可以通过媒体查询结合大型、小型和中型设备,实现内容对设备的显示和隐藏。

需要谨慎使用这些工具,避免在同一个站点创建完全不同的版本。响应式实用工具目前只适用于块和表切换。

基于Bootstrap框架菜鸟入门教程(推荐)

打印类

下表列出了打印类。使用这些切换打印内容。

基于Bootstrap框架菜鸟入门教程(推荐)

<div class="container" >
 <div class="row visible-on">
  <div class="col-xs-6 col-sm-3" style="background-color: #dedef8;
  box-shadow: inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
   <span class="hidden-xs">特别小型</span>
   <span class="visible-xs">✔ 在特别小型设备上可见</span>
  </div>
  <div class="col-xs-6 col-sm-3" style="background-color: #dedef8;
  box-shadow: inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
   <span class="hidden-sm">小型</span>
   <span class="visible-sm">✔ 在小型设备上可见</span>
  </div>
  <div class="clearfix visible-xs"></div>
  <div class="col-xs-6 col-sm-3" style="background-color: #dedef8;
  box-shadow: inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
   <span class="hidden-md">中型</span>
   <span class="visible-md">✔ 在中型设备上可见</span>
  </div>
  <div class="col-xs-6 col-sm-3" style="background-color: #dedef8;
  box-shadow: inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
   <span class="hidden-lg">大型</span>
   <span class="visible-lg">✔ 在大型设备上可见</span>
  </div>
 </div>
</div>

基于Bootstrap框架菜鸟入门教程(推荐)

以上这篇基于Bootstrap框架菜鸟入门教程(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 全角转换实现代码
Jul 17 Javascript
js二级地域选择的实现方法
Jun 17 Javascript
jquery实现表格本地排序的方法
Mar 11 Javascript
jquery处理页面弹出层查询数据等待操作实例
Mar 25 Javascript
充分发挥Node.js程序性能的一些方法介绍
Jun 23 Javascript
JS学习之表格的排序简单实例
May 16 Javascript
jQuery实现点击某个div打开层,点击其他div关闭层实例分析(阻止冒泡)
Nov 18 Javascript
js核心基础之构造函数constructor用法实例分析
May 11 Javascript
JS实现可切换图片的幻灯切换效果示例
May 24 Javascript
微信小程序中悬浮窗功能的实现代码
Aug 02 Javascript
在vue中根据光标的显示与消失实现下拉列表
Sep 29 Javascript
2020京东618叠蛋糕js脚本(亲测好用)
Jun 02 Javascript
基于js的变量提升和函数提升(详解)
Sep 17 #Javascript
利用express启动一个server服务的方法
Sep 17 #Javascript
限时抢购-倒计时的完整实例(分享)
Sep 17 #Javascript
canvas基础绘制-绚丽倒计时的实例
Sep 17 #Javascript
Angularjs自定义指令实现分页插件(DEMO)
Sep 16 #Javascript
JS分页的实现(同步与异步)
Sep 16 #Javascript
AngularJs 延时器、计时器实例代码
Sep 16 #Javascript
You might like
Symfony2使用第三方库Upload制作图片上传实例详解
2016/02/04 PHP
PHP实现简单的计算器
2020/08/28 PHP
(推荐一个超好的JS函数库)S.Sams Lifexperience ScriptClassLib
2007/04/29 Javascript
JS date对象的减法处理实现代码
2010/12/28 Javascript
Jquery实现简单的动画效果代码
2012/03/18 Javascript
jQuery javaScript捕获回车事件(示例代码)
2013/11/07 Javascript
BootStrap glyphicons 字体图标实现方法
2016/05/01 Javascript
jquery属性,遍历,HTML操作方法详解
2016/09/17 Javascript
JS switch判断 三目运算 while 及 属性操作代码
2017/09/03 Javascript
JS实现的简单四则运算计算器功能示例
2017/09/27 Javascript
详解angular脏检查原理及伪代码实现
2018/06/08 Javascript
D3.js(v3)+react 实现带坐标与比例尺的柱形图 (V3版本)
2019/05/09 Javascript
vue封装swiper代码实例解析
2019/10/08 Javascript
js实现简易点击切换显示或隐藏
2020/11/29 Javascript
微信小程序抽奖组件的使用步骤
2021/01/11 Javascript
python消费kafka数据批量插入到es的方法
2018/12/27 Python
python 计算一个字符串中所有数字的和实例
2019/06/11 Python
详解Django 时间与时区设置问题
2019/07/23 Python
pytorch 使用单个GPU与多个GPU进行训练与测试的方法
2019/08/19 Python
python 根据网易云歌曲的ID 直接下载歌曲的实例
2019/08/24 Python
根据tensor的名字获取变量的值方式
2020/01/04 Python
Python发送邮件实现基础解析
2020/08/14 Python
基于python获取本地时间并转换时间戳和日期格式
2020/10/27 Python
PyTorch预训练Bert模型的示例
2020/11/17 Python
python代码实现图书管理系统
2020/11/30 Python
香港永安旅游网:Wing On Travel
2017/04/10 全球购物
极度干燥澳大利亚官方网站:Superdry澳大利亚
2019/03/28 全球购物
11月红领巾广播稿
2014/01/17 职场文书
2014年3.15团委活动总结
2014/03/16 职场文书
我的祖国演讲稿
2014/05/04 职场文书
反邪教宣传工作方案
2014/05/07 职场文书
求职自我推荐信
2014/06/25 职场文书
医院护士党的群众路线教育实践活动对照检查材料思想汇报
2014/10/04 职场文书
化妆品促销活动总结
2015/05/07 职场文书
法律服务所工作总结
2015/08/10 职场文书
中国梦党课学习心得体会
2016/01/05 职场文书