目錄
前面的話
基礎表單
水平表單
控件尺寸
控件状态
按钮
首頁 web前端 html教學 Bootsrtap表單的介紹與應用

Bootsrtap表單的介紹與應用

Jul 02, 2017 am 09:44 AM
表單

前面的話

<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

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何實現PHP表單提交後的頁面跳轉 如何實現PHP表單提交後的頁面跳轉 Aug 12, 2023 am 11:30 AM

如何實現PHP表單提交後的頁面跳轉【簡介】在Web開發中,表單的提交是一項常見的功能需求。當使用者填寫完表單並點擊提交按鈕後,通常需要將表單資料傳送至伺服器進行處理,並在處理完後將使用者重新導向至另一個頁面。本文將介紹如何使用PHP來實現表單提交後的頁面跳躍。 【步驟一:HTML表單】首先,我們需要在HTML頁面中撰寫一個包含表單的頁面,以便使用者填寫需要提交的資料。

如何使用 JavaScript 實作表單的輸入框內容自動提示功能? 如何使用 JavaScript 實作表單的輸入框內容自動提示功能? Oct 20, 2023 pm 04:01 PM

如何使用JavaScript實作表單的輸入框內容自動提示功能?簡介:表單的輸入框內容自動提示功能在網頁應用程式中非常常見,它可以幫助使用者快速輸入正確的內容。本文將介紹如何使用JavaScript實作此功能,並提供具體的程式碼範例。在建立HTML結構首先,我們需要建立一個包含輸入框和自動提示清單的HTML結構。可以使用以下程式碼:&lt;!DOCTYP

如何處理PHP表單中的使用者權限管理 如何處理PHP表單中的使用者權限管理 Aug 10, 2023 pm 01:06 PM

如何處理PHP表單中的使用者權限管理隨著Web應用程式的不斷發展,使用者權限管理是重要的功能之一。使用者權限管理可以控制使用者在應用程式中的操作權限,確保資料的安全性和合法性。在PHP表單中,使用者權限管理可以透過一些簡單的程式碼來實現。本文將介紹如何處理PHP表單中的使用者權限管理,並給予對應的程式碼範例。一、使用者角色的定義與管理首先,將使用者角色定義與管理是使用者權

如何使用 JavaScript 實作表單的輸入框內容即時校驗功能? 如何使用 JavaScript 實作表單的輸入框內容即時校驗功能? Oct 18, 2023 am 08:47 AM

如何使用JavaScript實作表單的輸入框內容即時校驗功能?在許多網頁應用程式中,表單是使用者與系統之間最常用的互動方式。然而,使用者輸入的內容往往需要進行有效性校驗,以確保資料的準確性和完整性。在這篇文章中,我們將學習如何使用JavaScript實作表單的輸入框內容即時校驗功能,並提供具體的程式碼範例。在建立表單首先,我們需要在HTML中建立一個簡單的表

如何使用HTML、CSS和jQuery實現表單自動保存的進階功能 如何使用HTML、CSS和jQuery實現表單自動保存的進階功能 Oct 28, 2023 am 08:20 AM

如何使用HTML、CSS和jQuery實現表單自動保存的高級功能在現代網頁應用中,表單是非常常見的元素之一。當使用者在輸入表單資料時,如何能夠實現自動儲存的功能,不僅可以提高使用者的使用體驗,也能確保資料的安全性。本文將介紹如何使用HTML、CSS和jQuery來實作表單的自動儲存功能,並附上具體的程式碼範例。一、HTML表單的結構建構我們先來建立一個簡單的HT

PHP表單處理:表單資料查詢與篩選 PHP表單處理:表單資料查詢與篩選 Aug 07, 2023 pm 06:17 PM

PHP表單處理:表單資料查詢與篩選引言在網路開發中,表單是一種重要的互動方式,使用者可以透過表單向伺服器提交資料並進行進一步的處理。本文將介紹如何使用PHP處理表單資料的查詢與篩選功能。表單的設計與提交首先,我們需要設計一個包含查詢與篩選功能的表單。常見的表單元素包括輸入框、下拉清單、單選框、複選框等,根據具體需求進行設計。用戶在提交表單時,會將資料以POS

Java實作表單的即時驗證與提示功能 Java實作表單的即時驗證與提示功能 Aug 07, 2023 am 10:42 AM

Java實作表單的即時驗證與提示功能隨著網路應用的普及和發展,表單的使用也變得越來越重要。表單是網頁中用於收集和提交使用者資料的元素,例如註冊或登入頁面的表單。當使用者填寫表單時,經常需要對其輸入的資料進行驗證和提示,以確保資料的正確性和完整性。在本文中,我們將介紹如何使用Java語言實作表單的即時驗證與提示功能。 HTML表單的建置首先,我們需要使用HTML語言

Laravel表單類別使用技巧:提高效率的方法 Laravel表單類別使用技巧:提高效率的方法 Mar 11, 2024 pm 12:51 PM

在編寫網站或應用程式時,表單是不可或缺的一部分。 Laravel作為一個流行的PHP框架,提供了豐富而強大的表單類,使得表單處理變得更加簡單和高效。本文將介紹一些Laravel表單類別的使用技巧,幫助你提升開發效率。下面透過具體的程式碼範例來詳細講解。建立表單要在Laravel中建立表單,首先需要在檢視中編寫對應的HTML表單。在處理表單時,可以使用Laravel

See all articles