首頁  >  文章  >  web前端  >  Bootsrtap表單的介紹與應用

Bootsrtap表單的介紹與應用

零下一度
零下一度原創
2017-07-02 09:44:361321瀏覽

前面的話

<p>  表單是用來與使用者做交流的一個網頁控件,良好的表單設計能夠讓網頁與使用者更好的溝通。表單中常見的元素主要包括:文字輸入框、下拉選擇框、單選按鈕、複選按鈕、文字網域和按鈕等。其中每個控制項所扮演的角色都各不相同,而且不同的瀏覽器對表單控制項渲染的風格都各有不同。

<p>  同樣,表單也是Bootstrap框架中的核心內容,本文將詳細介紹Bootstrap的表單

基礎表單

<p>  對於基礎表單,Bootstrap並未對其做太多的客製化效果設計,僅對表單內的fieldset、legend、label標籤進行了定制

fieldset 
{  min-width: 0;  padding: 0;  margin: 0;  border: 0;
}legend 
{  display: block;  width: 100%;  padding: 0;  margin-bottom: 20px;  font-size: 21px;  line-height: inherit;  color: #333;  border: 0;  border-bottom: 1px solid #e5e5e5;
}label 
{  display: inline-block;  margin-bottom: 5px;  font-weight: bold;
}
<p>  主要將這些元素的margin、padding和border等進行了細化設定

<p>  當然表單除了這幾個元素之外,還有input、select、textarea等元素,在Bootstrap框架中,透過客製化了一個類別名稱`form-control`,也就是說,如果這幾個元素使用了類別名稱“form-control”,將會實現一些設計上的客製化效果

<p>  1、寬度變成了100%

<p>  2、設定了一個淺灰色(#ccc )的邊框

<p>  3、具有4px的圓角

<p>#  4、設定陰影效果,且元素得到焦點之時,陰影和邊框效果會有所變化

<p>  5 、設定了placeholder的顏色為#999

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

水平表單

<p>  Bootstrap框架預設的表單是垂直顯示風格,但很多時候我們需要的水平表單風格

<p>  透過為表單新增.form-horizo​​ntal 類,並聯合使用Bootstrap 預設的柵格類,可以將label 標籤和控制項組水平並排佈局。這樣做會改變.form-group 的行為,使其表現為柵格系統中的行(row),因此就無需再額外添加.row

<p>  在
元素上使用類別名稱「form-horizo​​ntal」主要有以下幾個作用:

<p>  1、設定表單控制項padding和margin值

<p>  2、改變「form -group」的表現形式,類似於網格系統的「row」

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

<p># 

##內聯表單

  有時候我們需要將表單的控制項都在一行內顯示。在Bootstrap框架中實現這樣的表單效果是輕而易舉的,只需要在元素中加入類別名稱「form-inline」。內嵌表單實作原理非常簡單,欲將表單控制項在一行顯示,就需要將表單控制項設定成內聯區塊元素(display:inline-block)<p>

  為 元素新增.form- inline 類別可使其內容左對齊並且表現為inline-block 層級的控制項。只適用於視窗(viewport)至少在768px 寬度時(視口寬度再小的話就會使表單折疊)<p>

  在Bootstrap 中,輸入框和單選/多選框控制默認被設定為<p>width: 100%; 寬度。在內聯表單,我們將這些元素的寬度設為 width: auto;,因此,多個控制項可以排列在同一行。根據版面需求,可能需要一些額外的客製化元件

  如果沒有為每個輸入控制設定 <p>label 標籤,螢幕閱讀器將無法正確辨識。對於這些內嵌表單,可以透過為 label 設定 .sr-only 類別來隱藏。還有一些輔助技術提供label標籤的替代方案,例如 aria-labelaria-labelledby 或 title 屬性。如果這些都不存在,螢幕閱讀器可能會採取使用 placeholder 屬性,如果存在的話,使用佔位符來取代其他的標記,但要注意,這種方法是不妥當的

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

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

#
<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>
<p>表单控件

<p>  每一个表单都是由表单控件组成。离开了控件,表单就失去了意义

<p>【输入框】

<p>  单行输入框,常见的文本输入框,也就是input的type属性值为text。在Bootstrap中使用input时也必须添加type类型,如果没有指定type类型,将无法得到正确的样式,因为Bootstrap框架都是通过input[type=“?”](其中?号代表type类型,比如说text类型,对应的是input[type=“text”])的形式来定义样式的

<p>  包括大部分表单控件、文本输入域控件,还支持所有 HTML5 类型的输入控件: textpassworddatetimedatetime-localdatemonthtimeweeknumberemailurlsearchtelcolor

<p>  为了让控件在各种表单风格中样式不出错,需要添加类名“form-control”

<input type="text" class="form-control" placeholder="Text input">
<p>【下拉列表】

<p>  Bootstrap框架中的下拉选择框使用和原始的一致,多行选择设置multiple属性的值为multiple。Bootstrap框架会为这些元素提供统一的样式风格 

<p>  [注意]许多原生选择菜单 - 即在 Safari 和 Chrome 中 - 的圆角是无法通过修改 border-radius 属性来改变的

<select class="form-control">
  <option>1</option>
  <option>2</option>
  <option>3</option>
  <option>4</option>
  <option>5</option></select>
<p>【文本域】

<p>  文本域和原始使用方法一样,设置rows可定义其高度,设置cols可以设置其宽度。但如果textarea元素中添加了类名“form-control”类名,则无需设置cols属性。因为Bootstrap框架中的“form-control”样式的表单控件宽度为100%或auto。 当然,也可以根据需要改变 rows 属性

<textarea class="form-control" rows="3"></textarea>
<p>【多选和单选框】

<p>  多选框(checkbox)用于选择列表中的一个或多个选项,而单选框(radio)用于从多个选项中只选择一个

<p>  Bootstrap框架中checkbox和radio有点特殊,Bootstrap针对他们做了一些特殊化处理,主要是checkbox和radio与label标签配合使用会出现一些小问题(最头痛的是对齐问题) 

<p>  在Bootstrap框架中,主要借助“.checkbox”和“.radio”样式,来处理复选框、单选按钮与标签的对齐方式

<div class="checkbox">
  <label><input type="checkbox" value="">Option one is this and that&mdash;be sure to include why it's great  </label></div><div class="checkbox disabled">
  <label><input type="checkbox" value="" disabled>Option two is disabled  </label></div><div class="radio">
  <label><input type="radio" name="optionsRadios" id="optionsRadios1" value="option1" checked>Option one is this and that&mdash;be sure to include why it's great  </label></div><div class="radio">
  <label><input type="radio" name="optionsRadios" id="optionsRadios2" value="option2">Option two can be something else and selecting it will deselect option one  </label></div><div class="radio disabled">
  <label><input type="radio" name="optionsRadios" id="optionsRadios3" value="option3" disabled>Option three is disabled  </label></div>
<p>  通过将 .checkbox-inline.radio-inline 类应用到一系列的多选框(checkbox)或单选框(radio)控件上,可以使这些控件排列在一行 

<label class="checkbox-inline">
  <input type="checkbox" id="inlineCheckbox1" value="option1"> 1</label><label class="checkbox-inline">
  <input type="checkbox" id="inlineCheckbox2" value="option2"> 2</label><label class="checkbox-inline">
  <input type="checkbox" id="inlineCheckbox3" value="option3"> 3</label><label class="radio-inline">
  <input type="radio" name="inlineRadioOptions" id="inlineRadio1" value="option1"> 1</label><label class="radio-inline">
  <input type="radio" name="inlineRadioOptions" id="inlineRadio2" value="option2"> 2</label><label class="radio-inline">
  <input type="radio" name="inlineRadioOptions" id="inlineRadio3" value="option3"> 3</label>
<p>

<p>【静态控件】

<p>  如果需要在表单中将一行纯文本和 label 元素放置于同一行,为 <p> 元素添加 .form-control-static 类即可

<form class="form-horizontal">
  <div class="form-group"><label class="col-sm-2 control-label">Email</label><div class="col-sm-10">  <p class="form-control-static">email@example.com</p></div>
  </div>
  <div class="form-group"><label for="inputPassword" class="col-sm-2 control-label">Password</label><div class="col-sm-10">  <input type="password" class="form-control" id="inputPassword" placeholder="Password"></div>
  </div></form>
<p>

<form class="form-inline">
  <div class="form-group"><label class="sr-only">Email</label><p class="form-control-static">email@example.com</p>
  </div>
  <div class="form-group"><label for="inputPassword2" class="sr-only">Password</label><input type="password" class="form-control" id="inputPassword2" placeholder="Password">
  </div>
  <button type="submit" class="btn btn-default">Confirm identity</button></form>

控件尺寸

<p>  前面看到的表单控件都正常的大小。可以通过设置控件的height,line-height,padding和font-size等属性来实现控件的高度设置。不过Bootstrap框架还提供了两个不同的类名,用来控制表单控件的高度。这两个类名是:

<p>  1、input-sm:让控件比正常大小更小

<p>  2、input-lg:让控件比正常大小更大

<p>  这两个类适用于表单中的input,textarea和select控件

<input class="form-control input-lg" type="text" placeholder=".input-lg"><input class="form-control" type="text" placeholder="Default input"><input class="form-control input-sm" type="text" placeholder=".input-sm"><select class="form-control input-lg">...</select><select class="form-control">...</select><select class="form-control input-sm">...</select>
<p>

<p>  通过添加 .form-group-lg.form-group-sm 类,为 .form-horizontal 包裹的 label 元素和表单控件快速设置尺寸

<form class="form-horizontal">
  <div class="form-group form-group-lg"><label class="col-sm-2 control-label" for="formGroupInputLarge">Large label</label><div class="col-sm-10">  <input class="form-control" type="text" id="formGroupInputLarge" placeholder="Large input"></div>
  </div>
  <div class="form-group form-group-sm"><label class="col-sm-2 control-label" for="formGroupInputSmall">Small label</label><div class="col-sm-10">  <input class="form-control" type="text" id="formGroupInputSmall" placeholder="Small input"></div>
  </div></form>
<p>

<p>  用栅格系统中的列(column)包裹输入框或其任何父元素,都可很容易的为其设置宽度

<div class="row">
  <div class="col-xs-2"><input type="text" class="form-control" placeholder=".col-xs-2">
  </div>
  <div class="col-xs-3"><input type="text" class="form-control" placeholder=".col-xs-3">
  </div>
  <div class="col-xs-4"><input type="text" class="form-control" placeholder=".col-xs-4">
  </div></div>
<p>

<p> 

控件状态

<p>  表单主要用来与用户沟通,好的表单就能更好的与用户进行沟通,而好的表单一定离不开表单的控件状态。

<p>  每一种表单状态都能给用户传递不同的信息,比如表单有焦点的状态可以告诉用户可以输入或选择东西,禁用状态可以告诉用户不可以输入或选择东西,还有就是表单控件验证状态,可以告诉用户的操作是否正确等。Bootstrap框架中的表单控件也具备这些状态

<p>【焦点状态】

<p>  焦点状态是通过伪类“:focus”来实现。Bootstrap框架中表单控件的焦点状态删除了outline的默认样式,重新添加阴影效果box-shadow

&lt;input class=&quot;form-control&quot;&gt;
<p>

<p>【禁用状态】

<p>  Bootstrap框架的表单控件的禁用状态和普通的表单禁用状态实现方法是一样的,在相应的表单控件上添加属性“disabled”。和其他表单的禁用状态不同的是,Bootstrap框架做了一些样式风格的处理 ,被禁用的输入框颜色更浅,并且还添加了 not-allowed 鼠标状态

.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
cursor: not-allowed;
background-color: #eee;
opacity: 1;
}
<input class="form-control" disabled>
<p>

<p>  在Bootstrap框架中,如果fieldset设置了disabled属性,整个域都将处于被禁用状态 

<p>  [注意]对于整个禁用的域中,如果legend中有输入框的话,这个输入框是无法被禁用的

  <fieldset disabled><legend><input type="text" class="form-control" placeholder="显然我颜色变灰了,但是我没被禁用,不信?单击试一下" /></legend><div class="form-group">  <label for="disabledTextInput">Disabled input</label>  <input type="text" id="disabledTextInput" class="form-control" placeholder="Disabled input"></div><div class="form-group">  <label for="disabledSelect">Disabled select menu</label>  <select id="disabledSelect" class="form-control"><option>Disabled select</option>  </select></div><div class="checkbox">  <label><input type="checkbox"> Can't check this      </label></div><button type="submit" class="btn btn-primary">Submit</button>
  </fieldset></form>
<p>

<p>【只读状态】

<p>  为输入框设置 readonly 属性可以禁止用户修改输入框中的内容。处于只读状态的输入框颜色更浅(就像被禁用的输入框一样),但是仍然保留标准的鼠标状态

<input class="form-control" type="text" placeholder="Readonly input here…" readonly>
<p>

<p>【校验状态】

<p>   在制作表单时,不免要做表单验证。同样也需要提供验证状态样式,在Bootstrap框架中同样提供这几种效果

<p>  1、.has-warning:警告状态(黄色)

<p>  2、.has-error:错误状态(红色)

<p>  3、.has-success:成功状态(绿色)

<p>  使用的时候只需要在form-group容器上或在其父级容器上对应添加状态类名

<div class="form-group has-success">
  <label class="control-label" for="inputSuccess1">Input with success</label>
  <input type="text" class="form-control" id="inputSuccess1" aria-describedby="helpBlock2">
  <span id="helpBlock2" class="help-block">A block of help text that breaks onto a new line and may extend beyond one line.</span></div><div class="form-group has-warning">
  <label class="control-label" for="inputWarning1">Input with warning</label>
  <input type="text" class="form-control" id="inputWarning1"></div><div class="form-group has-error">
  <label class="control-label" for="inputError1">Input with error</label>
  <input type="text" class="form-control" id="inputError1"></div><div class="has-success">
  <div class="checkbox"><label>  <input type="checkbox" id="checkboxSuccess" value="option1">  Checkbox with success</label>
  </div></div><div class="has-warning">
  <div class="checkbox"><label>  <input type="checkbox" id="checkboxWarning" value="option1">  Checkbox with warning</label>
  </div></div><div class="has-error">
  <div class="checkbox"><label>  <input type="checkbox" id="checkboxError" value="option1">  Checkbox with error</label>
  </div></div>
<p>

<p>  很多时候,在表单验证的时候,不同的状态会提供不同的 icon,比如成功是一个对号(√),错误是一个叉号(×)等。在Bootstrap框中也提供了这样的效果。如果想让表单在对应的状态下显示 icon 出来,只需要在对应的状态下添加类名“has-feedback”

<p>  [注意]此类名要与“has-error”、“has-warning”和“has-success”在一起使用,且只能使用在文本输入框 &lt;input class=&quot;form-control&quot;&gt; 元素上

<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" aria-describedby="inputSuccess2Status">
  <span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>
  <span id="inputSuccess2Status" class="sr-only">(success)</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" aria-describedby="inputWarning2Status">
  <span class="glyphicon glyphicon-warning-sign form-control-feedback" aria-hidden="true"></span>
  <span id="inputWarning2Status" class="sr-only">(warning)</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" aria-describedby="inputError2Status">
  <span class="glyphicon glyphicon-remove form-control-feedback" aria-hidden="true"></span>
  <span id="inputError2Status" class="sr-only">(error)</span></div><div class="form-group has-success has-feedback">
  <label class="control-label" for="inputGroupSuccess1">Input group with success</label>
  <div class="input-group"><span class="input-group-addon">@</span><input type="text" class="form-control" id="inputGroupSuccess1" aria-describedby="inputGroupSuccess1Status">
  </div>
  <span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>
  <span id="inputGroupSuccess1Status" class="sr-only">(success)</span></div>
<p>

<p>  当然,也可以为水平排列的表单和内联表单设置可选的图标

<form class="form-horizontal">
  <div class="form-group has-success has-feedback"><label class="control-label col-sm-3" for="inputSuccess3">Input with success</label><div class="col-sm-9">  <input type="text" class="form-control" id="inputSuccess3" aria-describedby="inputSuccess3Status">  <span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>  <span id="inputSuccess3Status" class="sr-only">(success)</span></div>
  </div>
  <div class="form-group has-success has-feedback"><label class="control-label col-sm-3" for="inputGroupSuccess2">Input group with success</label><div class="col-sm-9">  <div class="input-group"><span class="input-group-addon">@</span><input type="text" class="form-control" id="inputGroupSuccess2" aria-describedby="inputGroupSuccess2Status">  </div>  <span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>  <span id="inputGroupSuccess2Status" class="sr-only">(success)</span></div>
  </div></form>
<p>

<form class="form-inline">
  <div class="form-group has-success has-feedback"><label class="control-label" for="inputSuccess4">Input with success</label><input type="text" class="form-control" id="inputSuccess4" aria-describedby="inputSuccess4Status"><span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span><span id="inputSuccess4Status" class="sr-only">(success)</span>
  </div></form><form class="form-inline">
  <div class="form-group has-success has-feedback"><label class="control-label" for="inputGroupSuccess3">Input group with success</label><div class="input-group">  <span class="input-group-addon">@</span>  <input type="text" class="form-control" id="inputGroupSuccess3" aria-describedby="inputGroupSuccess3Status"></div><span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span><span id="inputGroupSuccess3Status" class="sr-only">(success)</span>
  </div></form>
<p>

<p>【提示信息】

<p>  在制作表单验证时,要提供不同的提示信息。在Bootstrap框架中也提供了这样的效果。使用了一个"help-block"样式,将提示信息以块状显示,并且显示在控件底部。

<form role="form">
  <div class="form-group has-success has-feedback"><label class="control-label" for="inputSuccess1">成功状态</label><input type="text" class="form-control" id="inputSuccess1" placeholder="成功状态" ><span class="help-block">你输入的信息是正确的</span><span class="glyphicon glyphicon-ok form-control-feedback"></span>
  </div>
  <div class="form-group has-warning has-feedback"><label class="control-label" for="inputWarning1">警告状态</label><input type="text" class="form-control" id="inputWarning1" placeholder="警告状态"><span class="help-block">请输入正确信息</span><span class="glyphicon glyphicon-warning-sign form-control-feedback"></span>
  </div>
  <div class="form-group has-error has-feedback"><label class="control-label" for="inputError1">错误状态</label><input type="text" class="form-control" id="inputError1" placeholder="错误状态"><span class="help-block">你输入的信息是错误的</span><span class="glyphicon glyphicon-remove form-control-feedback"></span>  
  </div></form>
<p>

<p> 

按钮

<p>  按钮是Bootstrap框架核心内容之一。因为按钮是Web制作中不可缺少的东西。而且不同的Web页面具有不同的按钮风格,甚至说同一个Web网站或应用程序具有多种按钮风格,比如说不同的按钮颜色、大小和状态等

<p>【基本按钮】

<p>  Bootstrap框架的基本按钮是通过类名“btn”来实现

<button class="btn" type="button">我是一个基本按钮</button>
<p>

<p>【默认按钮】

<p>  Bootstrap框架首先通过基础类名“.btn”定义了一个基础的按钮风格,然后通过“.btn-default”定义了一个默认的按钮风格。默认按钮的风格就是在基础按钮的风格的基础上修改了按钮的背景颜色、边框颜色和文本颜色

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
<p>

<p>【按钮元素】

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

<p>  制作按钮通常使用下面代码来实现:

<p>  ☑ input[type=“submit”]

<p>  ☑ input[type=“button”]

<p>  ☑ input[type=“reset”]

<p>  ☑ <button>

<p>  ☑ <a>

<p>  当然了,还可以使用在其他的标签元素上,如
,只要在制作按钮的标签元素上添加类名“btn”即可

<p>  虽然按钮类可以应用到其他元素上,但是,导航和导航条组件只支持 <button> 元素。如果 <a> 元素被作为按钮使用 -- 并用于在当前页面触发某些功能 -- 而不是用于链接其他页面或链接当前页面中的其他部分,那么,务必为其设置 role="button" 属性。所以,最佳实践是:强烈建议尽可能使用 <button> 元素来获得在各个浏览器上获得相匹配的绘制效果

<button class="btn btn-default" type="button">button标签按钮</button><input type="submit" class="btn btn-default" value="input标签按钮"/><a href="##" class="btn btn-default">a标签按钮</a><span class="btn btn-default">span标签按钮</span><div class="btn btn-default">div标签按钮</div>
<p>

<p>【按钮风格】

<p>  在Bootstrap框架中除了默认的按钮风格之外,还有其他六种按钮风格,每种风格的其实都一样,不同之处就是按钮的背景颜色、边框颜色和文本颜色

<p>  使用起来就很简单,就像前面介绍的默认按钮一样的使用方法,只需要在基础按钮“.btn”基础上追加对应的类名,就可以得到需要的按钮风格

<button class="btn" type="button">基础按钮.btn</button><button class="btn btn-default" type="button">默认按钮.btn-default</button><button class="btn btn-primary" type="button">主要按钮.btn-primary</button><button class="btn btn-success" type="button">成功按钮.btn-success</button><button class="btn btn-info" type="button">信息按钮.btn-info</button><button class="btn btn-warning" type="button">警告按钮.btn-warning</button><button class="btn btn-danger" type="button">危险按钮.btn-danger</button><button class="btn btn-link" type="button">链接按钮.btn-link</button>
<p>

<p>【按钮尺寸】

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

<p>  通过给按钮添加 .btn-block 类可以将其拉伸至父元素100%的宽度,而且按钮也变为了块级(block)元素,并且这个按钮不会有任何的padding和margin值

<p>
  <button type="button" class="btn btn-primary btn-lg">(大按钮)Large button</button>
  <button type="button" class="btn btn-default btn-lg">(大按钮)Large button</button></p><p>
  <button type="button" class="btn btn-primary">(默认尺寸)Default button</button>
  <button type="button" class="btn btn-default">(默认尺寸)Default button</button></p><p>
  <button type="button" class="btn btn-primary btn-sm">(小按钮)Small button</button>
  <button type="button" class="btn btn-default btn-sm">(小按钮)Small button</button></p><p>
  <button type="button" class="btn btn-primary btn-xs">(超小尺寸)Extra small button</button>
  <button type="button" class="btn btn-default btn-xs">(超小尺寸)Extra small button</button></p><button type="button" class="btn btn-primary btn-lg btn-block">(块级元素)Block level button</button><button type="button" class="btn btn-default btn-lg btn-block">(块级元素)Block level button</button>
<p>

<p>【按钮状态】

  Bootstrap框架针对按钮的状态做了一些特殊处理。在Bootstrap框架中针对按钮的状态效果主要分为两种:活动状态和禁用状态。

<p>  Bootstrap按钮的活动状态主要包括按钮的悬浮状态(:hover),点击状态(:active)和焦点状态(:focus)几种

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

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

<button type="button" class="btn btn-default btn-lg active">Button1</button><button type="button" class="btn btn-default btn-lg">Button2</button><a href="#" class="btn btn-default btn-lg active" role="button">Link1</a><a href="#" class="btn btn-default btn-lg" role="button">Link2</a>
<p>

<p>  和input等表单控件一样,在Bootstrap框架的按钮中也具有禁用状态的设置。禁用状态与其他状态按钮相比,就是背景颜色的透明度做了一定的处理,opcity的值从100%调整为65%。

<p>  在Bootstrap框架中,要禁用按钮有两种实现方式:

<p>  方法1:在标签中添加disabled属性

<p>  方法2:在元素标签中添加类名“disabled”

<p>  两者的主要区别是:

<p>  “.disabled”样式不会禁止按钮的默认行为,比如说提交和重置行为等。如果想要让这样的禁用按钮也能禁止按钮的默认行为,则需要通过JavaScript这样的语言来处理

<p>  对于<a>标签来说,它并不支持使用disable属性,只支持通过类名“.disable”来禁用按钮,可以禁止元素的链接跳转行为

<form action="#">
<button class="btn" disabled>通过disabled属性禁用按钮
</button> <button class="btn disabled">通过添加类名disabled禁用按钮</button>
<button class="btn">未禁用的按钮</button>
</form><div><a href="#" class="btn" disabled>通过disabled属性禁用按钮</a> 
<a href="#" class="btn disabled">通过添加类名disabled禁用按钮
</a><a href="#" class="btn">未禁用的按钮</a>
</div>

以上是Bootsrtap表單的介紹與應用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn