maxlength.json 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284
  1. {
  2. "title":"maxlength attribute for input and textarea elements",
  3. "description":"Declares an upper bound on the number of characters the user can input. Normally the UI ignores attempts by the user to type in additional characters beyond this limit.",
  4. "spec":"https://html.spec.whatwg.org/multipage/forms.html#attr-input-maxlength",
  5. "status":"ls",
  6. "links":[
  7. {
  8. "url":"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-maxlength",
  9. "title":"Mozilla Developer Network"
  10. }
  11. ],
  12. "bugs":[
  13. {
  14. "description":"In Opera 12.1 & below `ValidityState.tooLong` is true when the input's initial value exceeds the maxlength. Per the spec, it should instead be false until the user edits the value."
  15. }
  16. ],
  17. "categories":[
  18. "DOM",
  19. "HTML5",
  20. "JS API"
  21. ],
  22. "stats":{
  23. "ie":{
  24. "5.5":"u",
  25. "6":"a #1 #2 #3",
  26. "7":"a #1 #2 #3",
  27. "8":"a #1 #2 #3",
  28. "9":"a #1 #2 #3",
  29. "10":"y",
  30. "11":"y"
  31. },
  32. "edge":{
  33. "12":"y #4",
  34. "13":"y #4",
  35. "14":"y #4"
  36. },
  37. "firefox":{
  38. "2":"a #1 #2 #3",
  39. "3":"a #1 #2 #3",
  40. "3.5":"a #1 #2 #3",
  41. "3.6":"a #1 #2 #3",
  42. "4":"y #4",
  43. "5":"y #4",
  44. "6":"y #4",
  45. "7":"y #4",
  46. "8":"y #4",
  47. "9":"y #4",
  48. "10":"y #4",
  49. "11":"y #4",
  50. "12":"y #4",
  51. "13":"y #4",
  52. "14":"y #4",
  53. "15":"y #4",
  54. "16":"y #4",
  55. "17":"y #4",
  56. "18":"y #4",
  57. "19":"y #4",
  58. "20":"y #4",
  59. "21":"y #4",
  60. "22":"y #4",
  61. "23":"y #4",
  62. "24":"y #4",
  63. "25":"y #4",
  64. "26":"y #4",
  65. "27":"y #4",
  66. "28":"y #4",
  67. "29":"y #4",
  68. "30":"y #4",
  69. "31":"y #4",
  70. "32":"y #4",
  71. "33":"y #4",
  72. "34":"y #4",
  73. "35":"y #4",
  74. "36":"y #4",
  75. "37":"y #4",
  76. "38":"y #4",
  77. "39":"y #4",
  78. "40":"y #4",
  79. "41":"y #4",
  80. "42":"y #4",
  81. "43":"y #4",
  82. "44":"y #4",
  83. "45":"y #4",
  84. "46":"y #4",
  85. "47":"y #4",
  86. "48":"y #4",
  87. "49":"y #4",
  88. "50":"y #4",
  89. "51":"y",
  90. "52":"y",
  91. "53":"y"
  92. },
  93. "chrome":{
  94. "4":"y",
  95. "5":"y",
  96. "6":"y",
  97. "7":"y",
  98. "8":"y",
  99. "9":"y",
  100. "10":"y",
  101. "11":"y",
  102. "12":"y",
  103. "13":"y",
  104. "14":"y",
  105. "15":"y",
  106. "16":"y",
  107. "17":"y",
  108. "18":"y",
  109. "19":"y",
  110. "20":"y",
  111. "21":"y",
  112. "22":"y",
  113. "23":"y",
  114. "24":"y",
  115. "25":"y",
  116. "26":"y",
  117. "27":"y",
  118. "28":"y",
  119. "29":"y",
  120. "30":"y",
  121. "31":"y",
  122. "32":"y",
  123. "33":"y",
  124. "34":"y",
  125. "35":"y",
  126. "36":"y",
  127. "37":"y",
  128. "38":"y",
  129. "39":"y",
  130. "40":"y",
  131. "41":"y",
  132. "42":"y",
  133. "43":"y",
  134. "44":"y",
  135. "45":"y",
  136. "46":"y",
  137. "47":"y",
  138. "48":"y",
  139. "49":"y",
  140. "50":"y",
  141. "51":"y",
  142. "52":"y",
  143. "53":"y",
  144. "54":"y",
  145. "55":"y",
  146. "56":"y",
  147. "57":"y"
  148. },
  149. "safari":{
  150. "3.1":"u",
  151. "3.2":"a #1 #2 #3",
  152. "4":"a #1 #2 #3",
  153. "5":"u",
  154. "5.1":"y",
  155. "6":"y",
  156. "6.1":"y",
  157. "7":"y",
  158. "7.1":"y",
  159. "8":"y",
  160. "9":"y",
  161. "9.1":"y",
  162. "10":"y",
  163. "TP":"y"
  164. },
  165. "opera":{
  166. "9":"u",
  167. "9.5-9.6":"a #1",
  168. "10.0-10.1":"a #1",
  169. "10.5":"a #1",
  170. "10.6":"a #1",
  171. "11":"a #1",
  172. "11.1":"a #1",
  173. "11.5":"a #1",
  174. "11.6":"a #1",
  175. "12":"a #1",
  176. "12.1":"a #1",
  177. "15":"y",
  178. "16":"y",
  179. "17":"y",
  180. "18":"y",
  181. "19":"y",
  182. "20":"y",
  183. "21":"y",
  184. "22":"y",
  185. "23":"y",
  186. "24":"y",
  187. "25":"y",
  188. "26":"y",
  189. "27":"y",
  190. "28":"y",
  191. "29":"y",
  192. "30":"y",
  193. "31":"y",
  194. "32":"y",
  195. "33":"y",
  196. "34":"y",
  197. "35":"y",
  198. "36":"y",
  199. "37":"y",
  200. "38":"y",
  201. "39":"y",
  202. "40":"y",
  203. "41":"y",
  204. "42":"y",
  205. "43":"y"
  206. },
  207. "ios_saf":{
  208. "3.2":"u",
  209. "4.0-4.1":"y",
  210. "4.2-4.3":"y",
  211. "5.0-5.1":"y",
  212. "6.0-6.1":"y",
  213. "7.0-7.1":"y",
  214. "8":"a #5",
  215. "8.1-8.4":"a #5",
  216. "9.0-9.2":"y",
  217. "9.3":"y",
  218. "10-10.1":"y"
  219. },
  220. "op_mini":{
  221. "all":"a #1"
  222. },
  223. "android":{
  224. "2.1":"u",
  225. "2.2":"u",
  226. "2.3":"y",
  227. "3":"y",
  228. "4":"y",
  229. "4.1":"y",
  230. "4.2-4.3":"y",
  231. "4.4":"y",
  232. "4.4.3-4.4.4":"y",
  233. "53":"y"
  234. },
  235. "bb":{
  236. "7":"y",
  237. "10":"y"
  238. },
  239. "op_mob":{
  240. "10":"a #1",
  241. "11":"a #1",
  242. "11.1":"a #1",
  243. "11.5":"a #1",
  244. "12":"a #1",
  245. "12.1":"a #1",
  246. "37":"a #6"
  247. },
  248. "and_chr":{
  249. "54":"y"
  250. },
  251. "and_ff":{
  252. "50":"y #4"
  253. },
  254. "ie_mob":{
  255. "10":"y",
  256. "11":"y"
  257. },
  258. "and_uc":{
  259. "11":"a #6"
  260. },
  261. "samsung":{
  262. "4":"y"
  263. }
  264. },
  265. "notes":"",
  266. "notes_by_num":{
  267. "1":"`<textarea>`'s' UI does not prevent the user from typing additional characters beyond the `maxlength` limit.",
  268. "2":"Does not support the `HTMLTextAreaElement.maxLength` DOM property.",
  269. "3":"Does not support [`ValidityState.tooLong`](https://developer.mozilla.org/en-US/docs/Web/API/ValidityState/tooLong). In some cases, this is because `.validity` is not supported in the first place.",
  270. "4":"Does not support `ValidityState.tooLong` correctly in the (unlikely) case of the value being initially set too long, then changed by the user to a still incorrect state. See [Firefox bug](https://bugzilla.mozilla.org/show_bug.cgi?id=1203844) and [MS Edge bug](https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/4678527/).",
  271. "5":"`<input>`'s UI does not prevent the user from typing additional characters beyond the `maxlength` limit between two existing characters of the string.",
  272. "6":"Allows text beyond maxlength to be entered at first, but removes all characters past the maxlength when focus is lost."
  273. },
  274. "usage_perc_y":83.46,
  275. "usage_perc_a":14.62,
  276. "ucprefix":false,
  277. "parent":"form-validation",
  278. "keywords":"maximum,length,input,textarea,too,long,validity,state",
  279. "ie_id":"",
  280. "chrome_id":"",
  281. "firefox_id":"",
  282. "webkit_id":"",
  283. "shown":true
  284. }