WAI-ARIA无障碍网页资料

Posted 西门小白菜

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WAI-ARIA无障碍网页资料相关的知识,希望对你有一定的参考价值。

一、ARIA是啥?

     WAI-ARIA指无障碍网页应用。主要针对的是视觉缺陷,失聪,行动不便的残疾人以及假装残疾的测试人员。尤其像盲人,眼睛看不到,其浏览网页则需要借助辅助设备,如屏幕阅读器,屏幕阅读机可以大声朗读或者输出盲文。而ARIA就是可以让屏幕阅读器准确识别网页中的内容,变化,状态的技术规范,可以让盲人这类用户也能无障碍阅读!

     虽然html5的出现大大增强了网页的可访问性和无障碍阅读,但是,其不是万能的,例如无法让盲人知道模拟控件的类型等。所以ARIA才显得更加重要。

    其次,ARIA规范一直在更新维护,浏览器方面IE8+以及其他所有现代浏览器都都已支持ARIA, 几乎可以说是全方位支持。流行的javascript库jQuery, 以及衍生的jQuery Mobile早已支持了ARIA,国内知名JavaScript库kissy也在11年支持了ARIA并在实际项目中使用了。

二、实际应用的例子

      本例来自淘宝首页,示例对象见下截图(淘宝网右上角选项卡):

                 

       大家主要到这个部分的地方,F12开启开发人员模式,可以发现,后台有一行代码,如下:

                  

       这个就是ARIA在现实应用的例子。

三、属性

       以下是整理后的:ARIA属性值表、ARIA属性表、ARIA状态属性表

     (1)、  ARIA属性表:

                                                                                                        ARIA Roles值示意及说明表

role属性值 含义 HTML示意 说明
alert 警告
1 <p id="ajax_error_alert" role="alert"></p>
alert 例子代码

 

例如ajax操作返回错误信息的div标签。
alertdialog 表示警告弹出框
1 <div aria-labelledby="alert_title" aria-hidden="false" tabindex="0"  role="alertdialog" id="alert1">
2     <p id="alert_title">弹出框</p>
3     <p id="alert_message">哥,你输入的时间穿越了,请重新输入!</p>
4     <input type="button" value="关闭" id="alert_close" />
5 </div>
alertdialog例子代码

 

 

 application  表示应用  
1 <div id="application" role="application">
2     <label id="date_label" for="date">时间</label>:
3     <input id="date" type="text"/>
4     <button id="bn_date">选择日期...</button>
5     <div id="dp1" class="datepicker" aria-hidden="true">
6         <-- 时间选择控件具体 -->
7     </div>
8 </div>
application例子代码

 

 例如自定义的时间选择器。
button 表示按钮
1 <div role="toolbar" tabindex="0" aria-activedescendant="button1">
2   <img src="btncut.png" id="button1" role="button" alt="cut" />
3   <img src="btncopy.png" id="button2" role="button" alt="copy" />
4   <img src="btnpaste.png" id="button3" role="button" alt="paste" />
5 </div>
button例子代码

 

就是一个button
checkbox 表示复选框
1 <ul role="group">
2   <li role="checkbox" aria-checked="mixed" tabindex="0">所有姑娘</li>  
3       <li role="checkbox" aria-checked="false" tabindex="0">晴川</li>
4       <li role="checkbox" aria-checked="true" tabindex="0">静秋</li>
5       <li role="checkbox" aria-checked="true" tabindex="0">黄小仙</li>
6 </ul>
View Code

 

 

 combobox  表示下拉列表框  
1 <input id="cb1-edit" class="cb_edit" type="text" tabindex="0"
2       role="combobox" aria-autocomplete="inline" aria-owns="cb1-list" />
3       
4 <ul id="cb1-list" tabindex="-1" role="listbox" aria-expanded="true">
5     <li id="cb1-opt1" role="option">晴川</li>
6     <li id="cb1-opt2" role="option">静秋</li>
7     <li id="cb1-opt3" role="option">黄小仙</li>
8 </ul>
View Code

 

 

 

grid 表示网格
 1 <table id="grid1" role="grid" aria-labelledby="grid1_label" aria-readonly="true">
 2   <caption id="grid1_label">美女们</caption>
 3   <thead>
 4     <tr>
 5       <th id="grid1_q" tabindex="-1">晴川</th>
 6       <th id="grid1_j" tabindex="-1">静秋</th>
 7       <th id="grid1_h" tabindex="-1">黄小仙</th>
 8     </tr>
 9   </thead>
10   <tbody id="data"></tbody>
11 </table>
View Code

 

 

 gridcell  表示网格单元  
1 <table role="grid" aria-readonly="true">
2   <tr role="row" aria-selected="false">
3     <td role="gridcell" tabindex="-1">晴川</td>
4     <td role="gridcell" tabindex="-1">静秋</td>
5     <td role="gridcell" tabindex="-1">黄小仙</td>
6   </tr>
7 </table>
View Code

 

 类似于table & table-cell
group 表示组合并
1 <ul role="group">
2   <li role="checkbox" aria-checked="mixed" tabindex="0">所有姑娘</li>  
3       <li role="checkbox" aria-checked="false" tabindex="0">晴川</li>
4       <li role="checkbox" aria-checked="true" tabindex="0">静秋</li>
5       <li role="checkbox" aria-checked="true" tabindex="0">黄小仙</li>
6 </ul>
View Code

 

 

 heading  表示应用程序标题头  
1 <div role="heading" aria-live="assertive" aria-atomic="true">2012年 3月</div>
View Code

 

 

 

 listbox  表示列表框  
1 <input id="cb1-edit" class="cb_edit" type="text" tabindex="0"
2       role="combobox" aria-autocomplete="inline" aria-owns="cb1-list" />
3       
4 <ul id="cb1-list" tabindex="-1" role="listbox" aria-expanded="true">
5     <li id="cb1-opt1" role="option">晴川</li>
6     <li id="cb1-opt2" role="option">静秋</li>
7     <li id="cb1-opt3" role="option">黄小仙</li>
8 </ul>
View Code

 

 

 

log 表示日志记录
1 <div role="log" aria-atomic="false" aria-relevant="additions"></div>
View Code

 

类似三国杀右侧记录战事区域;或是比赛文字直播记录区域
menu 表示菜单
 1 <ul role="menubar" title="美女菜单">
 2   <li role="menuitem" tabindex="0" aria-haspopup="true">美女
 3     <ul role="menu" aria-hidden="true">
 4       <li role="menuitemradio" tabindex="-1" aria-checked="true">晴川</li>
 5       <li role="menuitemradio" tabindex="-1" aria-checked="false">静秋</li>
 6       <li role="menuitemradio" tabindex="-1" aria-checked="false">黄小仙</li>
 7     </ul>
 8   </li>
 9   <li role="menuitem" tabindex="-1" aria-haspopup="false">靓女</li>
10   <li role="menuitem" tabindex="-1" aria-haspopup="false">淑女</li>
11   <li role="menuitem" tabindex="-1" aria-haspopup="false">熟女</li>
12 </ul>
View Code

 

 

 

 menubar  表示菜单栏  
 1 <ul role="menubar" title="美女菜单">
 2   <li role="menuitem" tabindex="0" aria-haspopup="true">美女
 3     <ul role="menu" aria-hidden="true">
 4       <li role="menuitemradio" tabindex="-1" aria-checked="true">晴川</li>
 5       <li role="menuitemradio" tabindex="-1" aria-checked="false">静秋</li>
 6       <li role="menuitemradio" tabindex="-1" aria-checked="false">黄小仙</li>
 7     </ul>
 8   </li>
 9   <li role="menuitem" tabindex="-1" aria-haspopup="false">靓女</li>
10   <li role="menuitem" tabindex="-1" aria-haspopup="false">淑女</li>
11   <li role="menuitem" tabindex="-1" aria-haspopup="false">熟女</li>
12 </ul>
View Code

 

 

 

 menuitem  表示菜单项  
 1 <ul role="menubar" title="美女菜单">
 2   <li role="menuitem" tabindex="0" aria-haspopup="true">美女
 3     <ul role="menu" aria-hidden="true">
 4       <li role="menuitemradio" tabindex="-1" aria-checked="true">晴川</li>
 5       <li role="menuitemradio" tabindex="-1" aria-checked="false">静秋</li>
 6       <li role="menuitemradio" tabindex="-1" aria-checked="false">黄小仙</li>
 7     </ul>
 8   </li>
 9   <li role="menuitem" tabindex="-1" aria-haspopup="false">靓女</li>
10   <li role="menuitem" tabindex="-1" aria-haspopup="false">淑女</li>
11   <li role="menuitem" tabindex="-1" aria-haspopup="false">熟女</li>
12 </ul>
View Code

 

 

 

menuitemcheckbox 表示可复选的菜单项

(c)2006-2024 SYSTEM All Rights Reserved IT常识