Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/78.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 css设置speak:none现在是否等同于aria hidden=“true”?_Html_Css_Wai Aria_Assistive Technology_Css Speech - Fatal编程技术网

Html css设置speak:none现在是否等同于aria hidden=“true”?

Html css设置speak:none现在是否等同于aria hidden=“true”?,html,css,wai-aria,assistive-technology,css-speech,Html,Css,Wai Aria,Assistive Technology,Css Speech,我只是想知道我是否应该期待浏览器和辅助技术在2015年1月左右使用speak:none,其方式等同于设置aria hidden=true。我想指出一些半透明的文本应该被忽略,我想知道我是否可以在一个操作中做到这一点,只添加一个设置不透明样式和speak:none的类,而不是添加该类并设置aria hidden属性。似乎没有可靠的数据支持speak,但它似乎没有得到实施 独立于实现状态,speak:none不等同于aria hidden=true 根据CSS语音模块CR,属性“确定是否以听觉方式呈

我只是想知道我是否应该期待浏览器和辅助技术在2015年1月左右使用speak:none,其方式等同于设置aria hidden=true。我想指出一些半透明的文本应该被忽略,我想知道我是否可以在一个操作中做到这一点,只添加一个设置不透明样式和speak:none的类,而不是添加该类并设置aria hidden属性。

似乎没有可靠的数据支持speak,但它似乎没有得到实施

独立于实现状态,speak:none不等同于aria hidden=true

根据CSS语音模块CR,属性“确定是否以听觉方式呈现文本”,即以听觉方式呈现文本

根据ARIA规范,“表示该元素及其所有子元素对于作者实现的任何用户都不可见或不可感知”斜体

因此,aria hidden=true不会引起任何问题;它只是声明作者隐藏了元素。它涉及到所有类型的渲染:听觉、可视、触觉,或者将来可能发明的任何模式。

为了回答我最初问题的意图,我想知道是否可以添加一个类来设置不透明样式并禁用屏幕阅读器中的文本,而不是添加类并设置aria hidden属性

我最终只设置了aria hidden属性,然后在css中使用[aria hidden]而不是类名来设置不透明样式

p[aria hidden=true]{ 不透明度:0.3; 指针事件:无; 用户选择:无; 游标:默认值; } 看这篇文章

使用以下组合:

说:永远不要; 说:拼写; 说话的价值观

自动:只要元素不是“显示:块”并且是 可见性:可见,文本将以听觉方式读取。 从不:文本不会以听觉方式阅读 始终:文本将以听觉方式读取,无论显示值或 祖先的价值观。 表示为的值 与如何阅读文本相关的发言:

正常:采用浏览器的默认语音设置。 拼写:指示浏览器拼写内容属性 而不是说出完整的单词。 数字:一次读一个数字,就像69读“六” 九”。美好的 文字标点符号:像分号一样拼写点号,而不是 而不是像停顿一样对待他们。 无标点符号:完全跳过标点符号。
感谢您指出这两种方法在含义上的差异,并引用ARIA规范。现在我想知道aria hidden=true是否适用于通过不透明而在语义上变得不相关,但在某种程度上仍然可见的文本。理想情况下,文本将完全隐藏,但在这种情况下,我无法控制设计,只能控制实现。@MikeGodin,如果它在语义上不相关,即无意义,我认为应该设置role=presentation。@JukkaK.Korpela-role=presentation并不意味着文本内容不相关/无意义;这只意味着标记本身的语义将被忽略:例如,OK将被视为纯文本OK或OK,而不是按钮。aria hidden=true实际上非常适合对屏幕阅读器完全隐藏内容;尽管我们必须小心地适当地使用它-。如果出于其他原因,通过将不透明度设置为透明而不是使用display:none/visibility:hidden的常用技术,使文本对视力正常的用户不可见,那么设置aria hidden=true也会确保屏幕阅读器忽略它。aria hidden对于隐藏模式对话框/灯箱后面的灰显内容也非常有用。请注意,aria hidden=true不会阻止键盘聚焦元素,因此将aria hidden=true拍打到某个对象上不会在您将菜单或某个对象设置为不透明度时自动越过辅助功能线:0。您还需要将隐藏元素中的所有交互元素设置为tabindex=-1;这里的文本是否被一些模式用户界面(如lightbox)所掩盖;或者,这只是通过将“不透明度”设置为“完全透明”,而不是出于任何原因使用“显示:无”或“可见性:隐藏”(这是隐藏内容的常用方式),从而在视觉上隐藏的文本?@BrendanMcK,这里的场景是,文本以一种使其在视觉上不相关的方式变灰。我希望它也与辅助设备无关。如果它在视觉上真的无关,那么aria hidden听起来是一个很好的匹配。如果看不到用户界面,很难确定;作为一个反例,禁用的按钮通常是灰色的,但仍然可见,并且对屏幕阅读器仍然可用,因为它们仍然相关,只是在特定点不可操作 及时地,例如,表格中的所有字段尚未填写。