VS Code中W3C Web Validator报错带role="group"的figure无效,是否合规?
问题原因及解决方案
核心问题:当
<figure>元素包含<figcaption>时,它本身已经具备完整的无障碍语义,不需要额外添加role="group"。HTML规范明确规定,带有figcaption的figure元素不应设置role属性——浏览器会默认赋予它figure的ARIA角色,手动添加role="group"会覆盖这个默认语义,造成语义冲突,这就是验证器报错的直接原因。关于WAI教程的误解:W3C WAI的《Groups of Images》中提到的
role="group",是针对未使用<figure>元素的场景(比如用普通<div>包裹多张图片和说明文字时),用来给辅助技术传递分组语义。但你已经采用<figure>+<figcaption>的标准组合,这个组合本身就完成了分组、关联图片与说明的语义传递,完全满足无障碍要求,不需要额外添加role="group"。修正后的代码:
<figure> <img src="blabla.jpg" width="250" height="173" alt=""> <figcaption>blabla</figcaption> </figure>
内容的提问来源于stack exchange,提问作者Martinus33
相关产品推荐
相关产品推荐

