输入控件 input( type类型 )
form 元素只是一个数据获取元素的容器,而容器内的元素称为表单控件。最常用的表单控件是 input 元素。
[1] text 单行文本输入字段 // 可以与 datalist 配合使用(在输入时获得一些提示)
type="text" 表示一个文本输入框,它是默认的输入类型,是一个单行的控件,一般是一个带有内嵌框的矩形。
[ search 搜索输入框 ]
语义上表示搜索框,外观上与 type="text" 的 input 输入类型没有差异。
<input type="search">[ tel 手机号输入 ]
语义上的电话输入域,外观上与 type="text" 的 input 输入类型没有差异,在手机端会唤出数字键盘。
<input type="tel" placeholder="请输入11位手机号码" pattern="\d{11}">[ url 单个URL绝对路径地址 ] // IE9- 浏览器及 safari 浏览器不支持
语义上的 url 地址的输入域,会自动验证 url 域的值,外观上与 type="text" 的 input 输入类型没有差异。
<input type="url">[ email 邮箱地址输入 ] // IE9- 浏览器及 safari 浏览器不支持
语义上的 e-mail 地址输入域,会自动验证 email 域的值,外观上与 type="text" 的 input 输入类型没有差异,在手机端会唤出英文键盘。email 类型的 input 元素支持 multiple 属性,可以输入多个邮箱地址,使用 “,” 分隔。
<input type="email" name="email" multiple>
[2] number 数字输入框,如数字、小数点 // IE 不支持该类型
// 用于处理数字输入,在手机端会唤出数字键盘 <input type="number" min="0" max="10" step="0.5" value="6" />
// 属性: max 规定允许的最大值 min 规定允许的最小值 step 规定合法的数字间隔 value 规定默认值 [注意]属性的取值可为小数
[3] password 密码输入框
密码输入框,它与文本输入框几乎一模一样,功能上唯一的不同的字母输入后会被隐藏,一般是一连串的点 。
// IE6 浏览器设置的 type="text" 或 "password" 的 input 元素的宽高为包含 padding 和 border 的宽高。
[4] checkbox 多选按钮
允许用户在给定数目的选择中选择一个或多个选项。同一组的按钮,name 取值一定要一致。
[注意] checkbox 类型的 input 元素无法设置 padding 和 border (除 IE10- 浏览器以外)。
type="radio" 或 "checkbox" 的 input 元素支持 checked 属性。
<form> 选择你所喜欢的: // 复选框 <input type="checkbox" name="football"> 足球 <input type="checkbox" name="basketball"> 篮球 <input type="checkbox" name="pingpang"> 乒乓球 <input type="checkbox" name="others"> 其他 <br><br> 性别: // 单选框 <input type="radio" name="sex"> 男 <input type="radio" name="sex"> 女 <input type="radio" name="sex" checked> 未知 </form>
[5] redio 单选按钮
允许用户从给定数目的选择中选一个选项。同一组按钮,name 值一定要一致。
[注意] radio 类型的 input 元素无法设置 padding 和 border(除 IE10- 浏览器以外)。
[6] file 文件选择器,定义输入字段和"浏览"按钮,用于文件上传
accept属性:文件类型过滤 multiple:是否支持多选
[注意] IE8- 浏览器设置的 type="file" 的 input 元素的宽高为包含 padding 和 border 的宽高。
该类型的 input 元素支持 accept 属性和 multiple 属性。
[7] range 范围选择控件,可以与 datalist 关联进行分段 // IE9- 不支持该类型
用于处理包含在一定范围内的数字输入,类似于 type="number" 的 input 类型。
属性: max 规定允许的最大值 min 规定允许的最小值 step 规定合法的数字间隔 value 规定默认值 [注意] 属性的取值可为小数
<input type="range" min="0" max="10" step="0.5" value="6" /> // 如果不设置min和max属性,则默认min=0,max=100
[8] color 颜色输入控件,可以与 datalist 关联快速选择颜色 // safari 和 IE 不支持该类型
创建一个调色板用来选择颜色,颜色值以 URL 编码后的十六进制数值提交。
<input type="color">
[9] 日期输入控件 // IE 和 Firefox 这 6 种日期类型都不支持,chrome 不支持 datetime 类型。
HTML5 拥有多个可供选取日期和时间的新输入类型。
- type="date" 的 input 输入类型用于选取日、月、年。
- type="month" 的 input 输入类型用于选取月、年。
- type="week" 的 input 输入类型用于选取周、年。
- type="time" 的 input 输入类型用于选取时、分。
- type="datetime" 的 input 输入类型用于选取时、日、月、年(UTC 时间)。
- type="datetime-local" 的 input 输入类型用于选取时、日、月、年(本地时间)。
要预设控件的日期和时间,可以用字符串设置 value 属性。
value属性格式: date YYYY-MM-DD time hh:mm:ss.s datetime YYYY-MM-DDThh:mm:ss:sZ datetime-local YYYY-MM-DDThh:mm:ss:s month YYYY-MM week YYYY-Wnn YYYY=年 MM=月 DD=日 hh=小时 mm=分钟 ss=秒 s=0.1秒 T=日期与时间之间的分隔符 Z=Zulu时间的时区 Wnn=W周数,从1月的第一周开始是1,直到52 该类型的value属性格式还可以用在min和max的属性里,用来创建时间跨度;step可以用来设置移动的刻度。 [注意] chrome不支持该类型的step设置。 <input type="week" value="2015-W36" step="2" min="2015-W25" max="2015-W40">
[10] reset/submit/button 按钮组 // 同 button 元素
- 普通按钮:type="button" 定义可点击的按钮,但没有任何行为,常用于在用户点击时启动 JS 程序。
// IE8-浏览器的box-sizing:content-box;而其他浏览器的box-sizing:border-box; <input type="button" value="Click me" onclick="alert(1)" />
- 图片形式的提交按钮:type="image" 的 input 输入类型定义图像形式的提交按钮,可设置 width、height、src、alt 这四个属性。用图片作为提交按钮会一起发送点击在图片上的 x 和 y 坐标,这样可以与服务器端图片地图结合使用,如果图片有 name 属性,也会随坐标发送。
- 提交按钮:type="submit" 的 input 输入类型,用于创建提交表单的按钮。
- 重置按钮:type="reset" 的 input 输入类型,用于创建重置表单的按钮。
[11] hidden 隐藏输入类型 // 用于在表单中增加对用户不可见,但需要提交的额外数据,如统计网站访问人数
<input type="hidden" name="test" value="123"> // disabled属性无法与type="hidden"的input元素一起使用