HTML 属性:max
max
属性定义了包含该属性的输入所能接受和有效的最大值。如果元素的 value
大于此值,则该元素将 验证 失败。此值必须大于或等于 min
属性的值。如果存在 max
属性但未指定或无效,则不会应用 max
值。如果 max
属性有效且一个非空值大于 max
属性允许的最大值,则约束验证将阻止表单提交。
max 属性对数字输入类型有效,包括 date、month、week、time、datetime-local、number 和 range 类型,以及 <progress>
和 <meter>
元素。它是一个数字,指定表单控件在被视为有效之前可能拥有的最大正值。
如果值超过允许的最大值,则 validityState.rangeOverflow
将为 true,并且该控件将匹配 :out-of-range
和 :invalid
伪类。
语法
输入类型 | 语法 | 示例 |
---|---|---|
日期 | yyyy-mm-dd |
<input type="date" max="2019-12-25" step="1"> |
月份 | yyyy-mm |
<input type="month" max="2019-12" step="12"> |
周 | yyyy-W## |
<input type="week" max="2019-W23" step=""> |
时间 | HH:mm |
<input type="time" max="17:00" step="900"> |
datetime-local | yyyy-mm-ddTHH:mm |
<input type="datetime-local" max="2019-12-25T23:59">
|
数字 | <number> |
<input type="number" min="0" step="5" max="100">
|
range | <number> |
<input type="range" min="60" step="5" max="100">
|
注意: 当用户输入的数据不符合设定的最大值时,该值在约束验证中被视为无效,并将匹配 :invalid
和 :out-of-range
伪类。
有关更多信息,请参阅 客户端验证 和 rangeOverflow
。
对于 <progress>
元素,max
属性描述了 progress
元素指示的任务所需的工作量。如果存在,必须大于零,并且是一个有效的浮点数。对于 <meter>
元素,max
属性定义了测量范围的上限数值。如果指定了(min
属性),则必须大于最小值。在这两种情况下,如果省略,则默认值为 1。
输入类型 | 语法 | 示例 |
---|---|---|
<progress> |
<number> |
<progress id="file" max="100" value="70"> 70% </progress>
|
<meter> |
<number> |
<meter id="fuel" min="0" max="100" low="33" high="66" optimum="80" value="40"> at 40/100</meter>
|
可访问性考虑
提供说明以帮助用户了解如何完成表单以及使用各个表单控件。指明任何必需和可选的输入、数据格式以及其他相关信息。使用 max
属性时,请确保用户理解此最大要求。在 <label>
中提供说明可能就足够了。如果不在标签内提供说明,允许更灵活的定位和设计,可以考虑使用 aria-labelledby
或 aria-describedby
。
规范
规范 |
---|
HTML # attr-input-max |
HTML # attr-meter-max |
HTML # attr-progress-max |
浏览器兼容性
html.elements.input.max
加载中…
html.elements.meter.max
加载中…
html.elements.progress.max
加载中…