Files
wangxiaowei 5d7b75a14e first commit
2025-12-09 13:35:21 +08:00

725 lines
13 KiB
JSON

{
"title":"Form validation",
"description":"Method of setting required fields and field types without requiring JavaScript. This includes preventing forms from being submitted when appropriate, the `checkValidity()` method as well as support for the `:invalid`, `:valid`, and `:required` CSS pseudo-classes.",
"spec":"https://html.spec.whatwg.org/multipage/forms.html#client-side-form-validation",
"status":"ls",
"links":[
{
"url":"https://webplatform.github.io/docs/html/attributes/required",
"title":"WebPlatform Docs"
},
{
"url":"https://webkit.org/blog/7099/html-interactive-form-validation/",
"title":"WebKit Blog: HTML Interactive Form Validation"
}
],
"bugs":[
{
"description":"IE10 and 11 [have a problem](https://stackoverflow.com/questions/20241415/html5-number-input-field-step-attribute-broken-in-internet-explorer-10-and-inter) validating number fields in combination with the `step` attribute and certain values"
},
{
"description":"In Chrome (tested in 45) inputs marked as disabled or hidden while also marked as required are [incorrectly](https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled) being considered for constraint validation. https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled"
},
{
"description":"[IE & Edge do not support `:valid` on `form` elements.](https://web.archive.org/web/20171210190022/https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/8114184/) Firefox<51 seemed to only match `:valid` on `form`s after child element values have changed from an invalid to valid state; see [bug #1285425](https://bugzilla.mozilla.org/show_bug.cgi?id=1285425)."
}
],
"categories":[
"HTML5"
],
"stats":{
"ie":{
"5.5":"n",
"6":"n",
"7":"n",
"8":"n",
"9":"n",
"10":"y",
"11":"y"
},
"edge":{
"12":"y",
"13":"y",
"14":"y",
"15":"y",
"16":"y",
"17":"y",
"18":"y",
"79":"y",
"80":"y",
"81":"y",
"83":"y",
"84":"y",
"85":"y",
"86":"y",
"87":"y",
"88":"y",
"89":"y",
"90":"y",
"91":"y",
"92":"y",
"93":"y",
"94":"y",
"95":"y",
"96":"y",
"97":"y",
"98":"y",
"99":"y",
"100":"y",
"101":"y",
"102":"y",
"103":"y",
"104":"y",
"105":"y",
"106":"y",
"107":"y",
"108":"y",
"109":"y",
"110":"y",
"111":"y",
"112":"y",
"113":"y",
"114":"y",
"115":"y",
"116":"y",
"117":"y",
"118":"y",
"119":"y",
"120":"y",
"121":"y",
"122":"y",
"123":"y",
"124":"y",
"125":"y",
"126":"y",
"127":"y",
"128":"y",
"129":"y",
"130":"y",
"131":"y",
"132":"y",
"133":"y",
"134":"y",
"135":"y",
"136":"y",
"137":"y",
"138":"y",
"139":"y",
"140":"y",
"141":"y",
"142":"y"
},
"firefox":{
"2":"n",
"3":"n",
"3.5":"n",
"3.6":"n",
"4":"y",
"5":"y",
"6":"y",
"7":"y",
"8":"y",
"9":"y",
"10":"y",
"11":"y",
"12":"y",
"13":"y",
"14":"y",
"15":"y",
"16":"y",
"17":"y",
"18":"y",
"19":"y",
"20":"y",
"21":"y",
"22":"y",
"23":"y",
"24":"y",
"25":"y",
"26":"y",
"27":"y",
"28":"y",
"29":"y",
"30":"y",
"31":"y",
"32":"y",
"33":"y",
"34":"y",
"35":"y",
"36":"y",
"37":"y",
"38":"y",
"39":"y",
"40":"y",
"41":"y",
"42":"y",
"43":"y",
"44":"y",
"45":"y",
"46":"y",
"47":"y",
"48":"y",
"49":"y",
"50":"y",
"51":"y",
"52":"y",
"53":"y",
"54":"y",
"55":"y",
"56":"y",
"57":"y",
"58":"y",
"59":"y",
"60":"y",
"61":"y",
"62":"y",
"63":"y",
"64":"y",
"65":"y",
"66":"y",
"67":"y",
"68":"y",
"69":"y",
"70":"y",
"71":"y",
"72":"y",
"73":"y",
"74":"y",
"75":"y",
"76":"y",
"77":"y",
"78":"y",
"79":"y",
"80":"y",
"81":"y",
"82":"y",
"83":"y",
"84":"y",
"85":"y",
"86":"y",
"87":"y",
"88":"y",
"89":"y",
"90":"y",
"91":"y",
"92":"y",
"93":"y",
"94":"y",
"95":"y",
"96":"y",
"97":"y",
"98":"y",
"99":"y",
"100":"y",
"101":"y",
"102":"y",
"103":"y",
"104":"y",
"105":"y",
"106":"y",
"107":"y",
"108":"y",
"109":"y",
"110":"y",
"111":"y",
"112":"y",
"113":"y",
"114":"y",
"115":"y",
"116":"y",
"117":"y",
"118":"y",
"119":"y",
"120":"y",
"121":"y",
"122":"y",
"123":"y",
"124":"y",
"125":"y",
"126":"y",
"127":"y",
"128":"y",
"129":"y",
"130":"y",
"131":"y",
"132":"y",
"133":"y",
"134":"y",
"135":"y",
"136":"y",
"137":"y",
"138":"y",
"139":"y",
"140":"y",
"141":"y",
"142":"y",
"143":"y",
"144":"y",
"145":"y",
"146":"y",
"147":"y",
"148":"y"
},
"chrome":{
"4":"n",
"5":"n",
"6":"n",
"7":"n",
"8":"n",
"9":"n",
"10":"y",
"11":"y",
"12":"y",
"13":"y",
"14":"y",
"15":"y",
"16":"y",
"17":"y",
"18":"y",
"19":"y",
"20":"y",
"21":"y",
"22":"y",
"23":"y",
"24":"y",
"25":"y",
"26":"y",
"27":"y",
"28":"y",
"29":"y",
"30":"y",
"31":"y",
"32":"y",
"33":"y",
"34":"y",
"35":"y",
"36":"y",
"37":"y",
"38":"y",
"39":"y",
"40":"y",
"41":"y",
"42":"y",
"43":"y",
"44":"y",
"45":"y",
"46":"y",
"47":"y",
"48":"y",
"49":"y",
"50":"y",
"51":"y",
"52":"y",
"53":"y",
"54":"y",
"55":"y",
"56":"y",
"57":"y",
"58":"y",
"59":"y",
"60":"y",
"61":"y",
"62":"y",
"63":"y",
"64":"y",
"65":"y",
"66":"y",
"67":"y",
"68":"y",
"69":"y",
"70":"y",
"71":"y",
"72":"y",
"73":"y",
"74":"y",
"75":"y",
"76":"y",
"77":"y",
"78":"y",
"79":"y",
"80":"y",
"81":"y",
"83":"y",
"84":"y",
"85":"y",
"86":"y",
"87":"y",
"88":"y",
"89":"y",
"90":"y",
"91":"y",
"92":"y",
"93":"y",
"94":"y",
"95":"y",
"96":"y",
"97":"y",
"98":"y",
"99":"y",
"100":"y",
"101":"y",
"102":"y",
"103":"y",
"104":"y",
"105":"y",
"106":"y",
"107":"y",
"108":"y",
"109":"y",
"110":"y",
"111":"y",
"112":"y",
"113":"y",
"114":"y",
"115":"y",
"116":"y",
"117":"y",
"118":"y",
"119":"y",
"120":"y",
"121":"y",
"122":"y",
"123":"y",
"124":"y",
"125":"y",
"126":"y",
"127":"y",
"128":"y",
"129":"y",
"130":"y",
"131":"y",
"132":"y",
"133":"y",
"134":"y",
"135":"y",
"136":"y",
"137":"y",
"138":"y",
"139":"y",
"140":"y",
"141":"y",
"142":"y",
"143":"y",
"144":"y",
"145":"y",
"146":"y"
},
"safari":{
"3.1":"n",
"3.2":"n",
"4":"n",
"5":"a #1",
"5.1":"a #1",
"6":"a #1",
"6.1":"a #1",
"7":"a #1",
"7.1":"a #1",
"8":"a #1",
"9":"a #1",
"9.1":"a #1",
"10":"a #1",
"10.1":"y",
"11":"y",
"11.1":"y",
"12":"y",
"12.1":"y",
"13":"y",
"13.1":"y",
"14":"y",
"14.1":"y",
"15":"y",
"15.1":"y",
"15.2-15.3":"y",
"15.4":"y",
"15.5":"y",
"15.6":"y",
"16.0":"y",
"16.1":"y",
"16.2":"y",
"16.3":"y",
"16.4":"y",
"16.5":"y",
"16.6":"y",
"17.0":"y",
"17.1":"y",
"17.2":"y",
"17.3":"y",
"17.4":"y",
"17.5":"y",
"17.6":"y",
"18.0":"y",
"18.1":"y",
"18.2":"y",
"18.3":"y",
"18.4":"y",
"18.5-18.6":"y",
"26.0":"y",
"26.1":"y",
"26.2":"y",
"TP":"y"
},
"opera":{
"9":"n",
"9.5-9.6":"n",
"10.0-10.1":"y",
"10.5":"y",
"10.6":"y",
"11":"y",
"11.1":"y",
"11.5":"y",
"11.6":"y",
"12":"y",
"12.1":"y",
"15":"y",
"16":"y",
"17":"y",
"18":"y",
"19":"y",
"20":"y",
"21":"y",
"22":"y",
"23":"y",
"24":"y",
"25":"y",
"26":"y",
"27":"y",
"28":"y",
"29":"y",
"30":"y",
"31":"y",
"32":"y",
"33":"y",
"34":"y",
"35":"y",
"36":"y",
"37":"y",
"38":"y",
"39":"y",
"40":"y",
"41":"y",
"42":"y",
"43":"y",
"44":"y",
"45":"y",
"46":"y",
"47":"y",
"48":"y",
"49":"y",
"50":"y",
"51":"y",
"52":"y",
"53":"y",
"54":"y",
"55":"y",
"56":"y",
"57":"y",
"58":"y",
"60":"y",
"62":"y",
"63":"y",
"64":"y",
"65":"y",
"66":"y",
"67":"y",
"68":"y",
"69":"y",
"70":"y",
"71":"y",
"72":"y",
"73":"y",
"74":"y",
"75":"y",
"76":"y",
"77":"y",
"78":"y",
"79":"y",
"80":"y",
"81":"y",
"82":"y",
"83":"y",
"84":"y",
"85":"y",
"86":"y",
"87":"y",
"88":"y",
"89":"y",
"90":"y",
"91":"y",
"92":"y",
"93":"y",
"94":"y",
"95":"y",
"96":"y",
"97":"y",
"98":"y",
"99":"y",
"100":"y",
"101":"y",
"102":"y",
"103":"y",
"104":"y",
"105":"y",
"106":"y",
"107":"y",
"108":"y",
"109":"y",
"110":"y",
"111":"y",
"112":"y",
"113":"y",
"114":"y",
"115":"y",
"116":"y",
"117":"y",
"118":"y",
"119":"y",
"120":"y",
"121":"y",
"122":"y"
},
"ios_saf":{
"3.2":"n",
"4.0-4.1":"a #1",
"4.2-4.3":"a #1",
"5.0-5.1":"a #1",
"6.0-6.1":"a #1",
"7.0-7.1":"a #1",
"8":"a #1",
"8.1-8.4":"a #1",
"9.0-9.2":"a #1",
"9.3":"a #1",
"10.0-10.2":"a #1",
"10.3":"y",
"11.0-11.2":"y",
"11.3-11.4":"y",
"12.0-12.1":"y",
"12.2-12.5":"y",
"13.0-13.1":"y",
"13.2":"y",
"13.3":"y",
"13.4-13.7":"y",
"14.0-14.4":"y",
"14.5-14.8":"y",
"15.0-15.1":"y",
"15.2-15.3":"y",
"15.4":"y",
"15.5":"y",
"15.6-15.8":"y",
"16.0":"y",
"16.1":"y",
"16.2":"y",
"16.3":"y",
"16.4":"y",
"16.5":"y",
"16.6-16.7":"y",
"17.0":"y",
"17.1":"y",
"17.2":"y",
"17.3":"y",
"17.4":"y",
"17.5":"y",
"17.6-17.7":"y",
"18.0":"y",
"18.1":"y",
"18.2":"y",
"18.3":"y",
"18.4":"y",
"18.5-18.6":"y",
"26.0":"y",
"26.1":"y"
},
"op_mini":{
"all":"a #3"
},
"android":{
"2.1":"n",
"2.2":"n",
"2.3":"n",
"3":"n",
"4":"a #1",
"4.1":"a #1",
"4.2-4.3":"a #1",
"4.4":"a #1",
"4.4.3-4.4.4":"y",
"142":"y"
},
"bb":{
"7":"a #1",
"10":"y"
},
"op_mob":{
"10":"y",
"11":"y",
"11.1":"y",
"11.5":"y",
"12":"y",
"12.1":"y",
"80":"y"
},
"and_chr":{
"142":"y"
},
"and_ff":{
"144":"a #1"
},
"ie_mob":{
"10":"a #2",
"11":"a #2"
},
"and_uc":{
"15.5":"y"
},
"samsung":{
"4":"y",
"5.0-5.4":"y",
"6.2-6.4":"y",
"7.2-7.4":"y",
"8.2":"y",
"9.2":"y",
"10.1":"y",
"11.1-11.2":"y",
"12.0":"y",
"13.0":"y",
"14.0":"y",
"15.0":"y",
"16.0":"y",
"17.0":"y",
"18.0":"y",
"19.0":"y",
"20":"y",
"21":"y",
"22":"y",
"23":"y",
"24":"y",
"25":"y",
"26":"y",
"27":"y",
"28":"y",
"29":"y"
},
"and_qq":{
"14.9":"y"
},
"baidu":{
"13.52":"y"
},
"kaios":{
"2.5":"a #1",
"3.0-3.1":"y"
}
},
"notes":"",
"notes_by_num":{
"1":"Partial support refers to lack of notice when form with required fields is attempted to be submitted.",
"2":"Partial support in IE10 mobile refers to lack of warning when blocking submission.",
"3":"Partial support in Opera Mini refers to only supporting the CSS pseudo classes."
},
"usage_perc_y":94.87,
"usage_perc_a":0.36,
"ucprefix":false,
"parent":"",
"keywords":"",
"chrome_id":"6091813840486400",
"shown":true
}