Bootstrap学习笔记(四)-----Bootstrap每天必学之表单

本文主要讲解的是表单,这个其实对于做过网站的人来说,并不陌生,而且可以说是最为常用的提交数据的Form表单。本文主要来讲解一下内容:

1.基本案例
2.内联表单
3.水平排列的表单
4.被支持的控件
5.静态控件
6.控件状态
7.控件尺寸
8.帮助文本

基本案例
 单独的表单控件会被自动赋予一些全局样式。所有设置了.form-control的<input>、<textarea>和<select>元素都将被默认设置为width: 100%;。将label和前面提到的这些控件包裹在.form-group中可以获得最好的排列。

form role="form">

 <div class="form-group">

   <label for="exampleInputEmail1">Email address</label>

   <input type="email" class="form-control" id="exampleInputEmail1" placeholder="Enter 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>

两个文本框的宽度的确为100%。并且有三个form-group。

内联表单
为左对齐和inline-block级别的控件设置.form-inline,可以将其排布的更紧凑。
需要设置宽度:在Bootstrap中,input、select和textarea默认被设置为100%宽度。为了使用内联表单,你需要专门为使用到的表单控件设置宽度。

 一定要设置label:如果你没有为每个输入控件设置label,屏幕阅读器将无法正确识读。对于这些内联表单,你可以通过为label设置.sr-only已将其隐藏。

<form class="form-inline" role="form">

 <div class="form-group">

   <label class="sr-only" for="exampleInputEmail2">Email address</label>

   <input type="email" class="form-control" id="exampleInputEmail2" placeholder="Enter email">

 </div>

 <div class="form-group">

   <label class="sr-only" for="exampleInputPassword2">Password</label>

   <input type="password" class="form-control" id="exampleInputPassword2" 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-horizontal,并使用Bootstrap预置的栅格class可以将label和控件组水平并排布局。这样做将改变.form-group的行为,使其表现为栅格系统中的行(row),因此就无需再使用.row了。

<form class="form-horizontal" role="form">

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

被支持的控件
在表单布局案例中展示了其所支持的标准表单控件。
Input
大部分表单控件、文本输入域控件。包括HTML5支持的所有类型:text、password、datetime、datetime-local、date、month、time、week、number、email、url、search、tel和color。
注意:有正确设置了type的input控件才能被赋予正确的样式。
文本框示例

<input type="text" class="form-control" placeholder="Text input">

Textarea
支持多行文本的表单控件。可根据需要改变rows属性。

<h1>textarea</h1>

<textarea class="form-control" rows="3"></textarea>

Checkbox 和 radio
Checkbox用于选择列表中的一个或多个选项,而radio用于从多个选项中只选择一个。默认外观(堆叠在一起)

<div class="checkbox">

 <label>

   <input type="checkbox" value=""> sure to include why it‘s great

 </label>

</div>

<div class="radio">

 <label>

   <input type="radio" name="optionsRadios" id="optionsRadios1" value="option1" checked> include why it‘s great

 </label>

</div>

<div class="radio">

 <label>

   <input type="radio" name="optionsRadios" id="optionsRadios2" value="option2"> and selecting it will deselect option one

 </label>

</div>

Inline checkboxes

通过将.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>

同理Radio是一样的,只需要添加一下样式即可。

<select class="form-control">

 <option>1</option>

 <option>2</option>

 <option>3</option>

 <option>4</option>

 <option>5</option>

</select>

<select multiple class="form-control">

 <option>1</option>

 <option>2</option>

 <option>3</option>

 <option>4</option>

 <option>5</option>

</select>

静态控件
 在水平布局的表单中,如果需要将一行纯文本放置于label的同一行,为<p>元素添加.form-control-static即可。

<form class="form-horizontal" role="form">

 <div class="form-group">

   <label class="col-sm-2 control-label">Email</label>

   <div class="col-sm-10">

     <p class="form-control-static">[email protected]</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>

控件状态
  通过为控件和label设置一些基本状态,可以为用户提供回馈。
  输入焦点
  我们移除了某些表单控件的默认outline样式,并对其:focus状态赋予了box-shadow样式。

  <input class="form-control" id="focusedInput" type="text" value="This is focused...">

  被禁用的输入框
    为输入框设置disabled属性可以防止用户输入,并能改变一点外观,使其更直观。

<input class="form-control" id="disabledInput" type="text" placeholder="Disabled input here..." disabled>

  被禁用的fieldset
  为<fieldset>设置disabled属性可以禁用<fieldset>中包含的所有控件。<a>标签的链接功能不受影响

  这个class只改变<a class="btn btn-default">按钮的外观,并不能禁用其功能。建议自己通过JavaScript代码禁用链接功能。

  跨浏览器兼容性

  虽然Bootstrap会将这些样式应用到所有浏览器上,Internet Explorer 9及以下浏览器中的<fieldset>并不支持disabled属性。因此建议在这些浏览器上通过JavaScript代码来禁用fieldset

<form role="form">

 <fieldset disabled>

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

可将鼠标移到各个控件上进行查看效果。
校验状态
Bootstrap对表单控件的校验状态,如error、warning和success状态,都定义了样式。使用时,添加.has-warning、.has-error或.has-success到这些控件的父元素即可。任何包含在此元素之内的.control-label、.form-control和.help-block都将接受这些校验状态的样式。

<div class="form-group has-success">

 <label class="control-label" for="inputSuccess">Input with success</label>

 <input type="text" class="form-control" id="inputSuccess">

</div>

<div class="form-group has-warning">

 <label class="control-label" for="inputWarning">Input with warning</label>

 <input type="text" class="form-control" id="inputWarning">

</div>

<div class="form-group has-error">

 <label class="control-label" for="inputError">Input with error</label>

 <input type="text" class="form-control" id="inputError">

</div>

控件尺寸
通过.input-lg之类的class可以为控件设置高度,通过.col-lg-*之类的class可以为控件设置宽度。
高度尺寸
创建大一些或小一些的表单控件以匹配按钮尺寸。

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

调整列尺寸
用栅格系统中的列包裹input或其任何父元素,都可很容易的为其设置宽度。

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

帮助文本
 用于表单控件的块级帮助文本。

<span class="help-block">自己独占一行或多行的块级帮助文本。</span>

时间: 2024-11-11 10:20:05

Bootstrap学习笔记(四)-----Bootstrap每天必学之表单的相关文章

Bootstrap学习笔记(四)表单input

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

[原创]java WEB学习笔记34:Session 案例 之 解决表单重复提交

本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 ---------------------------------

Dojo学习笔记(十二):Dojo表单控件

1.主题 Dijit有四个主题可供选择: Claro, Tundra, Soria和Nihilo. 使用dijit主题,还需要两件事:引入主题的CSS文件,在你的页面上对body元素加入CSS样式名. <!DOCTYPE html> <html> <head>     <meta charset="utf-8">     <title>Hello Dijit!</title>     <!-- load Do

&lt;Bootstrap&gt; 学习笔记四. 表单组和输入框组的使用

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="bootstrap/css/bootstrap.css"> <link rel="stylesheet&

Yii2学习笔记:汉化yii,设置表单的描述(属性标签attributeLabels)

一:汉化框架 框架汉化在这里设置,如果不生效,前台后台的配置文件都设置下应该就可以了 二:汉化表单 汉化表单,直接在模型层设置,例如: 原来的联系我们表单 汉化后: ] 这种汉化在哪里修改呢?其实是设置属性标签,设置位置在模型层 代码如下 public function attributeLabels() { return [ 'name' => '称呼', 'email' => '邮箱', 'subject' => '标题', 'body' => '内容', 'verifyCod

HTML5+Bootstrap 学习笔记 4

HTML5 <map> <area> 标签 <map> 标签定义客户端的图像映射.图像映射是带有可点击区域的图像. <area> 标签定义图像映射内部的区域(图像映射指的是带有可点击区域的图像). area 元素始终嵌套在 <map> 标签内部. 1 <img src ="planets.gif" alt="Planets" usemap ="#planetmap" /> 2

Bootstrap学习笔记(二) 表单

在Bootstrap学习笔记(一) 排版的基础上继续学习Bootstrap的表单,编辑器及head内代码不变. 3-1 基础表单 单中常见的元素主要包括:文本输入框.下拉选择框.单选按钮.复选按钮.文本域和按钮等. 在Bootstrap框架中,通过定制了一个类名`form-control`,也就是说,如果这几个元素使用了类名"form-control",将会实现一些设计上的定制效果. 1.宽度变成了100% 2.设置了一个浅灰色(#ccc)的边框 3.具有4px的圆角 4.设置阴影效果

bootstrap学习笔记一: bootstrap初认识,hello bootstrap(下)

这一篇主要是补上源码,开始之前请先回顾:bootstrap学习笔记一: bootstrap初认识,hello bootstrap(上) 首先,我们的页面要求, lang,charset等就不用说了,老html属性, viewport是h5的属性,目的是 width=device-width 铺满设备宽度, initial-scale=1正常比较 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta c

BootStrap 学习笔记一

BootStrap学习笔记一: 学习工具:BootStrap中文文档:http://v3.bootcss.com/css/#type-lists 1.HTML5文档类型 <!DOCTYPE html> <html lang="zh-CN"> ... </html> 2.为了确保适当的绘制和触屏缩放,需要在 <head> 之中添加 viewport 元数据标签. <meta name="viewport" cont