note

html5支持表单外使用相关部件,只需要添加form属性即可。但是浏览器的支持率还不高 一个部件可以有多个label,但是最好还是不用

action指定提交目的URL,默认(不写)为当前页面URL; method 指定提交方法

校验

required ; pattern(部分无需) minlength/maxlength min/max ;

自定义 通过js实现,如果旧版不支持js的约束api,可以使用: https://hyperform.js.org/

novalidate 关闭浏览器本身校验 :valid、:invalid、:in-range 、:out-of-range CSS伪类不会被关闭

aria-live 展示给包括使用ScreenReader的人

小部件

<label>,
<input>, <textarea>, and <button>

对于大多数表单部件,一旦表单提交,所有具有name属性的小部件都会被发送,即使没有任何值被填。对于单选框和复选框,只有在勾选时才发送它们的值。如果他们没有被勾选,就不会发送任何东西,甚至连他们的名字也没有。

通用属性 autofocus,disabled,form,name,value

文本输入 readonly,placeholder,size,length

  • input

    传递数据的时候,会把文本转换成单行文本。

    如果指定了type,但是某个浏览器不兼容,会解读成默认值text

  • textarea

    cols, rows, wrap

    和Input的主要区别是,支持回车换行。

    html内容只是被显示成纯文本  

按钮 button类似于input,但是html值可以被处理。

图像按钮在提交时,不会提交图片,而是提交点击位置,如: http://foo.com?pos.x=123&pos.y=456

下拉框 select box,autocomplete box

meter 可以使用optimum,配合min,max,high,low来快速确定最优值、平均值

示例

Last updated

Was this helpful?