HTML·ARIA:可访问性是只给盲人用的特性么?
winter
该思维导图由 AI 生成,仅供参考
你好,我是 winter。
我们都知道,HTML 已经是一个完整的语义系统。在前面的课程中,我们围绕着 HTML 本身做了讲解,但是在实际应用中,我们还会用到一些它的扩展。今天我们要讲的 ARIA 就是其中重要的一部分。
ARIA 全称为 Accessible Rich Internet Applications,它表现为一组属性,是用于可访问性的一份标准。关于可访问性,它被提到最多的,就是它可以为视觉障碍用户服务,但是,这是一个误解。
实际上,可访问性其实是一个相当大的课题,它的定义包含了各种设备访问、各种环境、各种人群访问的友好性。不单单是永久性的残障人士需要用到可访问性,健康的人也可能在特定时刻处于需要可访问性的环境。
我们今天讲的 ARIA,是以交互形式来标注各种元素的一类属性,所以,在 ARIA 属性中,你可以看到很多熟悉的面孔,交互形式往往跟我们直觉中的“控件”非常相似。
所以我们的课程,特意把 ARIA 加入还有一个原因:ARIA 的角色对于我们 UI 系统的设计有重要的参考意义。
综述
我们先整体来看看,ARIA 给 HTML 元素添加的一个核心属性就是 role,我们来看一个例子:
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
ARIA是Accessible Rich Internet Applications的缩写,是一组属性,用于提高网页可访问性。虽然通常被误解为只为视障用户设计,但实际上可访问性覆盖了各种设备、环境和人群的友好性。ARIA通过role属性为HTML元素添加语义化,例如,通过role="checkbox"表示一个span元素被用作复选框。此外,ARIA还提供了一系列属性,如aria-checked和aria-labelledby,用于描述组件状态和关联文本。ARIA角色分为Widget角色(可交互控件)、结构角色(文档结构)和窗体角色(弹出窗体)。Widget角色包括各种交互组件,如按钮、滑块等,而结构角色类似于HTML5的语义化标签,如heading、separator等。窗体角色则用于表示新窗口、对话框等。ARIA属性需要在JavaScript中维护,对于组件库的实现者来说,ARIA提供了重要的参考。文章还提到了一些复杂角色,如combobox、grid、tablist等,它们需要多个角色配合使用。最后,文章提出了一个课后问题,要求使用支持图结构可视化的JS库展示ARIA的继承关系。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《重学前端》,新⼈⾸单¥59
《重学前端》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(6)
- 最新
- 精选
- 王小贱几年前有改造过无障碍网站....真滴是枯燥,不过不改的话在美国会被投诉下架2019-11-0520
- Yully看完了这篇文章,恍然大悟,原来公司大佬写的ui组件库里的那些看上去乱七八糟的东西是这个…大佬之前写的代码规规整整,尤其是ARIA这一块写的超级有条理,希望以后我再封装的时候也能用上ARIA2020-06-0319
- Artyhacker感觉ARIA应该算一份前端UI组件库的实现标准吧,实际项目中除了一些简单的网页以外,大都直接用组件库了。以前专门学习了mdn里可访问性相关的文档,但实际项目还是从来没用到过,可能也和项目并非面向大众有关吧。。感觉很多东西你知道它好,也花时间学习了,但是实际项目就是不会去用。。2019-05-079
- 亮亮可访问性在开发中还是用的比较少,项目没要求,开发时间紧,没咋注重过!2019-05-076
- Apep最近react项目有这个需求 头痛2019-05-091
- cjd沙发2019-05-07
收起评论