html5中input的type类型有哪些(总结)
目录
> 一、总结(点击显示或隐藏总结内容)
一句话总结:时间、颜色、(邮件、电话、url)、(数字、数字范围)、搜索search
二、html5中input的type类型
值 | 描述 |
---|---|
button | 定义可点击的按钮(大多与 JavaScript 使用来启动脚本) |
checkbox | 定义复选框。 |
color | 定义拾色器。 |
date | 定义日期字段(带有 calendar 控件) |
datetime | 定义日期字段(带有 calendar 和 time 控件) |
datetime-local | 定义日期字段(带有 calendar 和 time 控件) |
month | 定义日期字段的月(带有 calendar 控件) |
week | 定义日期字段的周(带有 calendar 控件) |
time | 定义日期字段的时、分、秒(带有 time 控件) |
定义用于 e-mail 地址的文本字段 | |
file | 定义输入字段和 "浏览..." 按钮,供文件上传 |
hidden | 定义隐藏输入字段 |
image | 定义图像作为提交按钮 |
number | 定义带有 spinner 控件的数字字段 |
password | 定义密码字段。字段中的字符会被遮蔽。 |
radio | 定义单选按钮。 |
range | 定义带有 slider 控件的数字字段。 |
reset | 定义重置按钮。重置按钮会将所有表单字段重置为初始值。 |
search | 定义用于搜索的文本字段。 |
submit | 定义提交按钮。提交按钮向服务器发送数据。 |
tel | 定义用于电话号码的文本字段。 |
text | 默认。定义单行输入字段,用户可在其中输入文本。默认是 20 个字符。 |
url | 定义用于 URL 的文本字段。 |
三、HTML5 input类型总结
1、文字总结
一、文本类
Text,文本
Url,网络地址
Password,密码
Email,邮箱地址
二、操作类
Checkbox ,复选框
Radio,单选框
File,上传文件
Number,数值
Range,百分百滑动条
三、功能类
Button,按钮
Image,图片提交按钮
Submit,文字提交按钮
Reset,重置表单
四、Date类
Date,年月日控件
Month,年月控件
Week,年周控件
Time,时间控件
Datetime,年月日+时间控件
Datetime-local,本地年月日+时间控件
五、特殊类
Hidden,隐藏信息
扩展:
1.文本类属性:placeholder。这是一个占位符,可以作为提示信息,而且无法被用户选中。
2.Url和e-mail,在H5中,会在提交表单的时候检测其格式是否书写正确。
3.操作类。一般input标签会结合label标签使用,label一般有两种书写方法:
1.非跨度:<label><input></input></label>
2.跨度:<label for="input_id"></label>
<input id="input_id"></input>
如果网页结构中,input和label是相邻的关系,可以直接使用非跨度的书 写方法,以减少代码量。
4.file。在实际应用中,网页表单中需要上传的文件一般不止一个,这时候就要用到multiple属性,它是一个布尔值属性,在添加这个属性后,就可以上传多个属性。另外,上传的文件可以被规定,使用accept属性。这个一个数组属性,属性值是MIME规定的文件类型。
5.Button。Button类型只能在value中定义按钮上显示的提示文字。Image类型只能在src中链接图片。
而button标签则结合了button和image的属性,它是一个双标签,也就是说它可以在内部嵌套其他标签,让按钮的显示效果更多元化。
6.Date类。Date类型的input标签是H5中新增加的。它实际上是一个控件,可以很方便的选择和显示时间数据,但是目前支持该控件的浏览器并不多。其中IE是完全不支持的。
7.Hidden。这个属性的input标签无法显示,也无法被用户控制。它的作用可以用来标记一些隐藏的表单信息。
例如:在一些网站中,对于用户的描述,有一个信息完整度的提示。
用户在注册的时候,必填项有5个,可填项有5个。注册的表单可以用hidden来记录可填项中有多少个是有数据的。
假如,一个用户把所有的可填项全部填写。那么他的信息完整度就是100%。
另一个用户的可填项一个也没有填写,他的信息完整度就是50%。
而这个数值可以根据hidden中记录的数值来进行计算。
2、代码

1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Form</title> 6 <style> 7 form { 8 width: 670px; 9 margin: 0 auto; 10 } 11 12 td { 13 background-color: #ffffff; 14 } 15 16 td, input { 17 font-size: 20px; 18 } 19 20 th { 21 font-size: 26px; 22 background-color: #22ccff; 23 letter-spacing: 2px; 24 } 25 26 #sub { 27 float: right; 28 margin-left: 10px; 29 position: relative; 30 top: 50px; 31 left: 0px; 32 -webkit-transition: all 0.5s ease-in-out 0.0s; 33 -moz-transition: all 0.5s ease-in-out 0.0s; 34 -ms-transition: all 0.5s ease-in-out 0.0s; 35 -o-transition: all 0.5s ease-in-out 0.0s; 36 transition: all 0.5s ease-in-out 0.0s; 37 } 38 </style> 39 </head> 40 <body> 41 <form target="_blank" action="URL"> 42 <!-- 额外的提交按钮 --> 43 <input type="submit" value="提交" id="sub"/> 44 <table bgcolor="#000" cellpadding="10" align="center"> 45 <!-- 文本类 --> 46 <tr> 47 <th colspan="2">文本类</th> 48 </tr> 49 <tr> 50 <td>text</td> 51 <td><input type="text" value="attribute:value" pattern="[A-Z,a-z]{1}[a-z,0-9]{3,10}"/></td> 52 </tr> 53 <tr> 54 <td>url</td> 55 <td> 56 <input type="url" placeholder="attribute:placeholder" value="a:b"/> 57 </td> 58 </tr> 59 <tr> 60 <td>password</td> 61 <td> 62 <input type="password" maxlength="8" placeholder="请输入密码" autofocus required/> 63 </td> 64 </tr> 65 <tr> 66 <td>email</td> 67 <td> 68 <input type="email" value="1@2.3"/> 69 </td> 70 </tr> 71 <tr> 72 <td>tel</td> 73 <td><input type="tel"></td> 74 </tr> 75 <tr> 76 <td>search</td> 77 <td><input type="search"/></td> 78 </tr> 79 <tr> 80 <td colspan="2"> 81 <p>“placeholder”:占位符;</p> 82 <p>“autofocus”:焦点获取;</p> 83 <p>“required”;表单必填项;</p> 84 <p>“pattern”;输入规范,该值为一个正则表达式;</p> 85 <p>在H5中,URL和email类型在提交表单时,会检测是否符合格式。</p> 86 </td> 87 </tr> 88 <!-- 文本类 end --> 89 90 <!-- 操作类 --> 91 <tr> 92 <th colspan="2">操作类</th> 93 </tr> 94 95 <tr> 96 <td>checkbox</td> 97 <td> 98 <label><input type="checkbox" name="ch_box"/>box_1</label> 99 <label><input type="checkbox" name="ch_box"/>box_2</label> 100 <label><input type="checkbox" name="ch_box"/>box_3</label> 101 <input type="checkbox" id="ch_box4"/> 102 <label for="ch_box4">box_4</label> 103 </td> 104 </tr> 105 <tr> 106 <td>radio</td> 107 <td> 108 <label><input type="radio" name="radio"/>ra_1</label> 109 <label><input type="radio" name="radio"/>ra_2</label> 110 <label><input type="radio" name="radio"/>ra_3</label> 111 <label><input type="radio" name="radio"/>ra_4</label> 112 </td> 113 </tr> 114 <tr> 115 <td colspan="2"> 116 label:<br/> 117 非跨度:<label><input></input></label><br/> 118 跨 度:<label for="input_id"></label><br/> 119     <input id="input_id"></input> 120 </td> 121 </tr> 122 <tr> 123 <td>file</td> 124 <td> 125 <input type="file" multiple="multiple"/> 126 <p>multiple="multiple":允许添加多个值;</p> 127 <p>accept="MIME_type";指定上传文件的类型;</p> 128 <p>如:accept="image/jpg,image/gif"</p> 129 <p><a href="http://www.w3school.com.cn/media/media_mimeref.asp" target="_blank">MIME_type 附录表</a></p> 130 </td> 131 </tr> 132 <tr> 133 <td>number</td> 134 <td><input type="number" max="100" min="90" step="2"/> 135 <p>只允许输入数字;"e":自然常数;</p></td> 136 </tr> 137 <tr> 138 <td>range</td> 139 <td> 140 <input type="range" max="100" min="0" step="20"/> 141 <p>“value”,默认为50,范围0~100;</p> 142 </td> 143 </tr> 144 <tr> 145 <td colspan="2">max:最多值;min:最小值;step:步长;</td> 146 </tr> 147 <tr> 148 <td>color</td> 149 <td><input type="color" value="#00ff00"/> 数值型:#ffffff;</td> 150 </tr> 151 <!-- 操作类 end --> 152 153 <!-- 表单功能 --> 154 <tr> 155 <th colspan="2">功能类</th> 156 </tr> 157 158 <tr> 159 <td>button</td> 160 <td> 161 <input type="button" value="button"/> 162 <button>This is a button.<img src="btn_03.png" width="52"/></button> 163 <p>“button”允许嵌入其他元素;</p> 164 </td> 165 </tr> 166 <tr> 167 <td>image</td> 168 <td><input type="image" src="btn_03.png" width="32" 169 height="26"/><span> H5中使用“width”“height”修改图片大小;</span></td> 170 </tr> 171 <tr> 172 <td>submit</td> 173 <td> 174 <input type="submit"/> 175 <p>get:在url地址上传送参数到服务器;<br/>post:在后台传送参数到服务器; </p> 176 </td> 177 </tr> 178 <tr> 179 <td>reset</td> 180 <td><input type="reset"/></td> 181 </tr> 182 <!-- 表单功能 end --> 183 184 <!-- 日期类型 --> 185 <tr> 186 <th colspan="2">Date 类</th> 187 </tr> 188 189 <tr> 190 <td>date</td> 191 <td><input type="date"/></td> 192 </tr> 193 <tr> 194 <td>month</td> 195 <td><input type="month"/></td> 196 </tr> 197 <tr> 198 <td>week</td> 199 <td><input type="week"/></td> 200 </tr> 201 <tr> 202 <td>time</td> 203 <td><input type="time"/></td> 204 </tr> 205 <tr> 206 <td>datetime</td> 207 <td><input type="datetime" value="2016-08-02T08:32Z"/></td> 208 </tr> 209 <tr> 210 <td>datetime-local</td> 211 <td><input type="datetime-local"/></td> 212 </tr> 213 <!-- 日期类型 end --> 214 <!-- 特殊类 --> 215 <tr> 216 <th colspan="2">特殊类</th> 217 </tr> 218 219 <tr> 220 <td>hidden</td> 221 <td><input type="hidden"/> 222 <p>可用于记录一些表单状态信息<br/>(例如使用value的值标记可选项为非空值的个数),<br/>或者其他自定义信息;</p></td> 223 </tr> 224 </table> 225 </form> 226 </body> 227 <script type="text/javascript"> 228 function sub_move() { 229 var s = document.getElementById("sub"); 230 window.onscroll = function _scroll() { 231 var top = document.documentElement.scrollTop || document.body.scrollTop; 232 s.style.top = top + 50 + "px"; 233 } 234 } 235 </script> 236 <script type="text/javascript"> 237 window.onload = function main() { 238 sub_move(); 239 } 240 </script> 241 </html> 242 243 input 类型 demo
四、input相关总结
一、使input文本框不可编辑的三种方法
1.disabled 属性规定应该禁用 input 元素,被禁用的 input 元素,不可编辑,不可复制,不可选择,不能接收焦点,后台也不会接收到传值。设置后文字的颜色会变成灰色。disabled 属性无法与 <input type="hidden"> 一起使用。
示例:<input type="text" disabled="disabled" />
2.readonly 属性规定输入字段为只读可复制,但是,用户可以使用Tab键切换到该字段,可选择,可以接收焦点,还可以选中或拷贝其文本。后台会接收到传值. readonly 属性可以防止用户对值进行修改。
readonly 属性可与 <input type="text"> 或 <input type="password"> 配合使用。
示例:<input type="text" readonly="readonly">
3.readonly unselectable="on" 该属性跟disable类似,input 元素,不可编辑,不可复制,不可选择,不能接收焦点,设置后文字的颜色也会变成灰色,但是后台可以接收到传值。
示例:<input type="text" readonly unselectable="on" >
(还是菜鸟一枚,写的不对的地方欢迎指正!)
二、input调用移动端的相册等
<input type="file" accept="image/*" capture="camera"> //支持相册
<input type="file" accept="video/*" capture="camcorder"> //支持视频
<input type="file" accept="audio/*" capture="microphone"> //支持录音
<input type="file" accept="image/*" multiple> //直接支持多选
建议在电脑上开发测试的时候不要加上accept的这个属性,他会明显使找并打开文件的过程变慢,效率很低