form-validation.json 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285
  1. {
  2. "title":"Form validation",
  3. "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.",
  4. "spec":"https://html.spec.whatwg.org/multipage/forms.html#client-side-form-validation",
  5. "status":"ls",
  6. "links":[
  7. {
  8. "url":"http://docs.webplatform.org/wiki/html/attributes/required",
  9. "title":"WebPlatform Docs"
  10. }
  11. ],
  12. "bugs":[
  13. {
  14. "description":"IE10 and 11 [have a problem](http://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"
  15. },
  16. {
  17. "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"
  18. },
  19. {
  20. "description":"[IE & Edge do not support `:valid` on `form` elements.](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)."
  21. }
  22. ],
  23. "categories":[
  24. "HTML5"
  25. ],
  26. "stats":{
  27. "ie":{
  28. "5.5":"n",
  29. "6":"n",
  30. "7":"n",
  31. "8":"n",
  32. "9":"n",
  33. "10":"y",
  34. "11":"y"
  35. },
  36. "edge":{
  37. "12":"y",
  38. "13":"y",
  39. "14":"y"
  40. },
  41. "firefox":{
  42. "2":"n",
  43. "3":"n",
  44. "3.5":"n",
  45. "3.6":"n",
  46. "4":"y",
  47. "5":"y",
  48. "6":"y",
  49. "7":"y",
  50. "8":"y",
  51. "9":"y",
  52. "10":"y",
  53. "11":"y",
  54. "12":"y",
  55. "13":"y",
  56. "14":"y",
  57. "15":"y",
  58. "16":"y",
  59. "17":"y",
  60. "18":"y",
  61. "19":"y",
  62. "20":"y",
  63. "21":"y",
  64. "22":"y",
  65. "23":"y",
  66. "24":"y",
  67. "25":"y",
  68. "26":"y",
  69. "27":"y",
  70. "28":"y",
  71. "29":"y",
  72. "30":"y",
  73. "31":"y",
  74. "32":"y",
  75. "33":"y",
  76. "34":"y",
  77. "35":"y",
  78. "36":"y",
  79. "37":"y",
  80. "38":"y",
  81. "39":"y",
  82. "40":"y",
  83. "41":"y",
  84. "42":"y",
  85. "43":"y",
  86. "44":"y",
  87. "45":"y",
  88. "46":"y",
  89. "47":"y",
  90. "48":"y",
  91. "49":"y",
  92. "50":"y",
  93. "51":"y",
  94. "52":"y",
  95. "53":"y"
  96. },
  97. "chrome":{
  98. "4":"n",
  99. "5":"n",
  100. "6":"n",
  101. "7":"n",
  102. "8":"n",
  103. "9":"n",
  104. "10":"y",
  105. "11":"y",
  106. "12":"y",
  107. "13":"y",
  108. "14":"y",
  109. "15":"y",
  110. "16":"y",
  111. "17":"y",
  112. "18":"y",
  113. "19":"y",
  114. "20":"y",
  115. "21":"y",
  116. "22":"y",
  117. "23":"y",
  118. "24":"y",
  119. "25":"y",
  120. "26":"y",
  121. "27":"y",
  122. "28":"y",
  123. "29":"y",
  124. "30":"y",
  125. "31":"y",
  126. "32":"y",
  127. "33":"y",
  128. "34":"y",
  129. "35":"y",
  130. "36":"y",
  131. "37":"y",
  132. "38":"y",
  133. "39":"y",
  134. "40":"y",
  135. "41":"y",
  136. "42":"y",
  137. "43":"y",
  138. "44":"y",
  139. "45":"y",
  140. "46":"y",
  141. "47":"y",
  142. "48":"y",
  143. "49":"y",
  144. "50":"y",
  145. "51":"y",
  146. "52":"y",
  147. "53":"y",
  148. "54":"y",
  149. "55":"y",
  150. "56":"y",
  151. "57":"y"
  152. },
  153. "safari":{
  154. "3.1":"n",
  155. "3.2":"n",
  156. "4":"n",
  157. "5":"a #1",
  158. "5.1":"a #1",
  159. "6":"a #1",
  160. "6.1":"a #1",
  161. "7":"a #1",
  162. "7.1":"a #1",
  163. "8":"a #1",
  164. "9":"a #1",
  165. "9.1":"a #1",
  166. "10":"a #1",
  167. "TP":"a #1"
  168. },
  169. "opera":{
  170. "9":"n",
  171. "9.5-9.6":"n",
  172. "10.0-10.1":"y",
  173. "10.5":"y",
  174. "10.6":"y",
  175. "11":"y",
  176. "11.1":"y",
  177. "11.5":"y",
  178. "11.6":"y",
  179. "12":"y",
  180. "12.1":"y",
  181. "15":"y",
  182. "16":"y",
  183. "17":"y",
  184. "18":"y",
  185. "19":"y",
  186. "20":"y",
  187. "21":"y",
  188. "22":"y",
  189. "23":"y",
  190. "24":"y",
  191. "25":"y",
  192. "26":"y",
  193. "27":"y",
  194. "28":"y",
  195. "29":"y",
  196. "30":"y",
  197. "31":"y",
  198. "32":"y",
  199. "33":"y",
  200. "34":"y",
  201. "35":"y",
  202. "36":"y",
  203. "37":"y",
  204. "38":"y",
  205. "39":"y",
  206. "40":"y",
  207. "41":"y",
  208. "42":"y",
  209. "43":"y"
  210. },
  211. "ios_saf":{
  212. "3.2":"n",
  213. "4.0-4.1":"a #1",
  214. "4.2-4.3":"a #1",
  215. "5.0-5.1":"a #1",
  216. "6.0-6.1":"a #1",
  217. "7.0-7.1":"a #1",
  218. "8":"a #1",
  219. "8.1-8.4":"a #1",
  220. "9.0-9.2":"a #1",
  221. "9.3":"a #1",
  222. "10-10.1":"a #1"
  223. },
  224. "op_mini":{
  225. "all":"a #3"
  226. },
  227. "android":{
  228. "2.1":"n",
  229. "2.2":"n",
  230. "2.3":"n",
  231. "3":"n",
  232. "4":"a #1",
  233. "4.1":"a #1",
  234. "4.2-4.3":"a #1",
  235. "4.4":"a #1",
  236. "4.4.3-4.4.4":"y",
  237. "53":"y"
  238. },
  239. "bb":{
  240. "7":"a #1",
  241. "10":"y"
  242. },
  243. "op_mob":{
  244. "10":"y",
  245. "11":"y",
  246. "11.1":"y",
  247. "11.5":"y",
  248. "12":"y",
  249. "12.1":"y",
  250. "37":"y"
  251. },
  252. "and_chr":{
  253. "54":"y"
  254. },
  255. "and_ff":{
  256. "50":"y"
  257. },
  258. "ie_mob":{
  259. "10":"a #2",
  260. "11":"a #2"
  261. },
  262. "and_uc":{
  263. "11":"y"
  264. },
  265. "samsung":{
  266. "4":"y"
  267. }
  268. },
  269. "notes":"",
  270. "notes_by_num":{
  271. "1":"Partial support refers to lack of notice when form with required fields is attempted to be submitted. See [WebKit bug](https://bugs.webkit.org/show_bug.cgi?id=28649).",
  272. "2":"Partial support in IE10 mobile refers to lack of warning when blocking submission.",
  273. "3":"Partial support in Opera Mini refers to only supporting the CSS pseudo classes."
  274. },
  275. "usage_perc_y":79.05,
  276. "usage_perc_a":18.19,
  277. "ucprefix":false,
  278. "parent":"forms",
  279. "keywords":"",
  280. "ie_id":"",
  281. "chrome_id":"6091813840486400",
  282. "firefox_id":"",
  283. "webkit_id":"",
  284. "shown":true
  285. }