Form validation
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 | WHATWG Living Standard |
IE | Edge | Firefox | Chrome | Safari | Opera |
---|---|---|---|---|---|
98 | |||||
95 | 97 | ||||
94 | 96 | TP | |||
11 | 95 | 93 | 95 | 15 | 80 |
10 | 94 | 92 | 94 | 14.1 | 79 |
9 | 93 | 91 | 93 | 14 | 78 |
8 | 92 | 90 | 92 | 13.1 | 77 |
Show all | |||||
7 | 91 | 89 | 91 | 13 | 76 |
6 | 90 | 88 | 90 | 12.1 | 75 |
5.5 | 89 | 87 | 89 | 12 | 74 |
88 | 86 | 88 | 11.1 | 73 | |
87 | 85 | 87 | 11 | 72 | |
86 | 84 | 86 | 10.1 | 71 | |
85 | 83 | 85 | 10 (1) | 70 | |
84 | 82 | 84 | 9.1 (1) | 69 | |
83 | 81 | 83 | 9 (1) | 68 | |
81 | 80 | 81 | 8 (1) | 67 | |
80 | 79 | 80 | 7.1 (1) | 66 | |
79 | 78 | 79 | 7 (1) | 65 | |
18 | 77 | 78 | 6.1 (1) | 64 | |
17 | 76 | 77 | 6 (1) | 63 | |
16 | 75 | 76 | 5.1 (1) | 62 | |
15 | 74 | 75 | 5 (1) | 60 | |
14 | 73 | 74 | 4 | 58 | |
13 | 72 | 73 | 3.2 | 57 | |
12 | 71 | 72 | 3.1 | 56 | |
70 | 71 | 55 | |||
69 | 70 | 54 | |||
68 | 69 | 53 | |||
67 | 68 | 52 | |||
66 | 67 | 51 | |||
65 | 66 | 50 | |||
64 | 65 | 49 | |||
63 | 64 | 48 | |||
62 | 63 | 47 | |||
61 | 62 | 46 | |||
60 | 61 | 45 | |||
59 | 60 | 44 | |||
58 | 59 | 43 | |||
57 | 58 | 42 | |||
56 | 57 | 41 | |||
55 | 56 | 40 | |||
54 | 55 | 39 | |||
53 | 54 | 38 | |||
52 | 53 | 37 | |||
51 | 52 | 36 | |||
50 | 51 | 35 | |||
49 | 50 | 34 | |||
48 | 49 | 33 | |||
47 | 48 | 32 | |||
46 | 47 | 31 | |||
45 | 46 | 30 | |||
44 | 45 | 29 | |||
43 | 44 | 28 | |||
42 | 43 | 27 | |||
41 | 42 | 26 | |||
40 | 41 | 25 | |||
39 | 40 | 24 | |||
38 | 39 | 23 | |||
37 | 38 | 22 | |||
36 | 37 | 21 | |||
35 | 36 | 20 | |||
34 | 35 | 19 | |||
33 | 34 | 18 | |||
32 | 33 | 17 | |||
31 | 32 | 16 | |||
30 | 31 | 15 | |||
29 | 30 | 12.1 | |||
28 | 29 | 12 | |||
27 | 28 | 11.6 | |||
26 | 27 | 11.5 | |||
25 | 26 | 11.1 | |||
24 | 25 | 11 | |||
23 | 24 | 10.6 | |||
22 | 23 | 10.5 | |||
21 | 22 | 10.0-10.1 | |||
20 | 21 | 9.5-9.6 | |||
19 | 20 | 9 | |||
18 | 19 | ||||
17 | 18 | ||||
16 | 17 | ||||
15 | 16 | ||||
14 | 15 | ||||
13 | 14 | ||||
12 | 13 | ||||
11 | 12 | ||||
10 | 11 | ||||
9 | 10 | ||||
8 | 9 | ||||
7 | 8 | ||||
6 | 7 | ||||
5 | 6 | ||||
4 | 5 | ||||
3.6 | 4 | ||||
3.5 | |||||
3 | |||||
2 |
Safari on iOS | Opera Mini | Android Browser | Blackberry Browser | Opera Mobile | Android Chrome | Android Firefox | IE Mobile | Android UC Browser | Samsung Internet | QQ Browser | Baidu Browser | KaiOS Browser |
---|---|---|---|---|---|---|---|---|---|---|---|---|
15 | all (3) | 94 | 10 | 64 | 94 | 92 | 11 (2) | 12.12 | 15.0 | 10.4 | 7.12 | 2.5 (1) |
14.5-14.8 | 4.4.3-4.4.4 | 7 (1) | 12.1 | 10 (2) | 14.0 | |||||||
14.0-14.4 | 4.4 (1) | 12 | 13.0 | |||||||||
13.4-13.7 | 4.2-4.3 (1) | 11.5 | 12.0 | |||||||||
Show all | ||||||||||||
13.3 | 4.1 (1) | 11.1 | 11.1-11.2 | |||||||||
13.2 | 4 (1) | 11 | 10.1 | |||||||||
13.0-13.1 | 3 | 10 | 9.2 | |||||||||
12.2-12.5 | 2.3 | 8.2 | ||||||||||
12.0-12.1 | 2.2 | 7.2-7.4 | ||||||||||
11.3-11.4 | 2.1 | 6.2-6.4 | ||||||||||
11.0-11.2 | 5.0-5.4 | |||||||||||
10.3 | 4 | |||||||||||
10.0-10.2 (1) | ||||||||||||
9.3 (1) | ||||||||||||
9.0-9.2 (1) | ||||||||||||
8.1-8.4 (1) | ||||||||||||
8 (1) | ||||||||||||
7.0-7.1 (1) | ||||||||||||
6.0-6.1 (1) | ||||||||||||
5.0-5.1 (1) | ||||||||||||
4.2-4.3 (1) | ||||||||||||
4.0-4.1 (1) | ||||||||||||
3.2 |
Notes
Partial support refers to lack of notice when form with required fields is attempted to be submitted.
Partial support in IE10 mobile refers to lack of warning when blocking submission.
Partial support in Opera Mini refers to only supporting the CSS pseudo classes.
Bugs
IE10 and 11 have a problem validating number fields in combination with the
step
attribute and certain valuesIn Chrome (tested in 45) inputs marked as disabled or hidden while also marked as required are incorrectly being considered for constraint validation. https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled
IE & Edge do not support
:valid
onform
elements. Firefox<51 seemed to only match:valid
onform
s after child element values have changed from an invalid to valid state; see bug #1285425.
Resources
Data by caniuse.com
Licensed under the Creative Commons Attribution License v4.0.
https://caniuse.com/form-validation