Bootstrap 教程
在本章節(jié)中,我們將學(xué)習(xí)如何使用 Bootstrap 創(chuàng)建表單。Bootstrap 通過一些簡(jiǎn)單的 HTML 標(biāo)簽和擴(kuò)展的類即可創(chuàng)建出不同樣式的表單。
Bootstrap 提供了下列類型的表單布局:
基本的表單結(jié)構(gòu)是 Bootstrap 自帶的,個(gè)別的表單控件自動(dòng)接收一些全局樣式。下面列出了創(chuàng)建基本表單的步驟:
結(jié)果如下所示:
如果需要?jiǎng)?chuàng)建一個(gè)表單,它的所有元素是內(nèi)聯(lián)的,向左對(duì)齊的,標(biāo)簽是并排的,請(qǐng)向 <form> 標(biāo)簽添加 class .form-inline。
結(jié)果如下所示:
水平表單與其他表單不僅標(biāo)記的數(shù)量上不同,而且表單的呈現(xiàn)形式也不同。如需創(chuàng)建一個(gè)水平布局的表單,請(qǐng)按下面的幾個(gè)步驟進(jìn)行:
結(jié)果如下所示:
Bootstrap 支持最常見的表單控件,主要是 input、textarea、checkbox、radio 和 select。
最常見的表單文本字段是輸入框 input。用戶可以在其中輸入大多數(shù)必要的表單數(shù)據(jù)。Bootstrap 提供了對(duì)所有原生的 HTML5 的 input 類型的支持,包括:text、password、datetime、datetime-local、date、month、time、week、number、email、url、search、tel 和 color。適當(dāng)?shù)?type 聲明是必需的,這樣才能讓 input 獲得完整的樣式。
結(jié)果如下所示:
當(dāng)您需要進(jìn)行多行輸入的時(shí),則可以使用文本框 textarea。必要時(shí)可以改變 rows 屬性(較少的行 = 較小的盒子,較多的行 = 較大的盒子)。
結(jié)果如下所示:
復(fù)選框和單選按鈕用于讓用戶從一系列預(yù)設(shè)置的選項(xiàng)中進(jìn)行選擇。
下面的實(shí)例演示了這兩種類型(默認(rèn)和內(nèi)聯(lián)):
結(jié)果如下所示:
當(dāng)您想讓用戶從多個(gè)選項(xiàng)中進(jìn)行選擇,但是默認(rèn)情況下只能選擇一個(gè)選項(xiàng)時(shí),則使用選擇框。
下面的實(shí)例演示了這兩種類型(select 和 multiple):
結(jié)果如下所示:
當(dāng)您需要在一個(gè)水平表單內(nèi)的表單標(biāo)簽后放置純文本時(shí),請(qǐng)?jiān)?<p> 上使用 class .form-control-static。
結(jié)果如下所示:
除了 :focus 狀態(tài)(即,用戶點(diǎn)擊 input 或使用 tab 鍵聚焦到 input 上),Bootstrap 還為禁用的輸入框定義了樣式,并提供了表單驗(yàn)證的 class。
當(dāng)輸入框 input 接收到 :focus 時(shí),輸入框的輪廓會(huì)被移除,同時(shí)應(yīng)用 box-shadow。
如果您想要禁用一個(gè)輸入框 input,只需要簡(jiǎn)單地添加 disabled 屬性,這不僅會(huì)禁用輸入框,還會(huì)改變輸入框的樣式以及當(dāng)鼠標(biāo)的指針懸停在元素上時(shí)鼠標(biāo)指針的樣式。
對(duì) <fieldset> 添加 disabled 屬性來禁用 <fieldset> 內(nèi)的所有控件。
Bootstrap 包含了錯(cuò)誤、警告和成功消息的驗(yàn)證樣式。只需要對(duì)父元素簡(jiǎn)單地添加適當(dāng)?shù)?class(.has-warning、 .has-error 或 .has-success)即可使用驗(yàn)證狀態(tài)。
下面的實(shí)例演示了所有控件狀態(tài):
結(jié)果如下所示:
您可以分別使用 class .input-lg 和 .col-lg-* 來設(shè)置表單的高度和寬度。下面的實(shí)例演示了這點(diǎn):
結(jié)果如下所示:
Bootstrap 表單控件可以在輸入框 input 上有一個(gè)塊級(jí)幫助文本。為了添加一個(gè)占用整個(gè)寬度的內(nèi)容塊,請(qǐng)?jiān)?<input> 后使用 .help-block。下面的實(shí)例演示了這點(diǎn):
結(jié)果如下所示: