Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTML aria标签属性是否允许为空字符串?_Html_Reactjs_Specifications_Wai Aria_Screen Readers - Fatal编程技术网

HTML aria标签属性是否允许为空字符串?

HTML aria标签属性是否允许为空字符串?,html,reactjs,specifications,wai-aria,screen-readers,Html,Reactjs,Specifications,Wai Aria,Screen Readers,屏幕阅读器会忽略空字符串吗?如果字符串为空,我应该避免将其添加到元素中吗 作为参考,这是react中的一个用例,您希望默认为空字符串,以避免检查未定义: <input id={id} value={value} {...(ariaLabel ? { 'aria-label': ariaLabel } : {})} /> 如果aria label设置为空字符串,我在规范中看不到任何关于应该发生什么的内容。我想你只是给它贴上标签,没有任何东西,这样就没问题了,但我可以想象一

屏幕阅读器会忽略空字符串吗?如果字符串为空,我应该避免将其添加到元素中吗

作为参考,这是react中的一个用例,您希望默认为空字符串,以避免检查未定义:

<input
  id={id}
  value={value}
  {...(ariaLabel ? { 'aria-label': ariaLabel } : {})}
/>

如果
aria label
设置为空字符串,我在规范中看不到任何关于应该发生什么的内容。我想你只是给它贴上标签,没有任何东西,这样就没问题了,但我可以想象一个屏幕阅读器会认为这是一个错误,然后又回到别的东西上去


我认为您使用的
aria标签是错误的,如果它有时可能是空的
aria标签
只是
元素的替身。它应该命名输入元素。不应该出现名称更改或可以为空的情况。

来自w3的文档没有提到
aria标签的空属性值。所以它可能是不同屏幕阅读器软件的实现定义


参考:

如果要创建可重用的输入组件,则会根据输入组件属性动态设置标签。如果按钮有自己的标签,那么我们不需要添加aria标签属性。