javascript - 屏幕阅读器省略禁用属性
问题描述
我有一个步进器 - 材质 UI 编号字段。它被禁用,但屏幕阅读器能够更改数字(增量和减量)。HTML如下:
<input aria-invalid="false" id="outlined-number" type="number" class="MuiInputBase-input MuiOutlinedInput-input" disabled="true" value="3">
解决方案
disabled
属性指定错误。来自https://html.spec.whatwg.org/multipage/common-microsyntaxes.html#boolean-attributes:
2.4.2 布尔属性
许多属性是布尔属性。元素上存在布尔属性表示真值,不存在该属性表示假值。
如果该属性存在,则其值必须是空字符串或与属性的规范名称匹配的不区分大小写的 ASCII 值,并且没有前导或尾随空格。
布尔属性不允许使用值“true”和“false”。要表示假值,必须完全省略该属性。
将代码更改为disabled="disabled"
.