详解Bootstrap的aria-label和aria-labelledby应用


Posted in Javascript onJanuary 04, 2016

aria-label

正常情况下,form表单的input组件都有对应的label.当input组件获取到焦点时,屏幕阅读器会读出相应的label里的文本。
如:

<!DOCTYPE html> 
<html> 
<head> 
 <meta charset = "utf-8"> 
 <title>demo</title> 
 <link href="bootstrap-3.3.4-dist/css/bootstrap.min.css" rel="stylesheet"> 
 <style type="text/css"> 
  body{padding: 20px;} 
 </style> 
</head> 
<body> 
 <form role = "form"> 
  <div class="form-group col-lg-3 form-horizontal"> 
   <label for = "idCard" class="control-label col-lg-5">身份证号:</label> 
   <div class="col-lg-7"> 
    <input type = "text" id = "idCard" class="form-control"> 
   </div>   
  </div>  
 </form> 
</body> 
</html>

详解Bootstrap的aria-label和aria-labelledby应用

但是如果我们没有给输入框设置label时,当其获得焦点时,屏幕阅读器会读出aria-label属性的值,aria-label不会在视觉上呈现效果。
如:

<body> 
 <form role = "form"> 
  <div class="form-group col-lg-3 form-horizontal"> 
   <div class="col-lg-7"> 
    <input type = "text" id = "idCard" class="form-control" aria-label = "身份证号"> 
   </div>   
  </div>  
 </form> 
</body>

详解Bootstrap的aria-label和aria-labelledby应用

aria-labelledby属性

当想要的标签文本已在其他元素中存在时,可以使用aria-labelledby,并将其值为所有读取的元素的id。如下:
当ul获取到焦点时,屏幕阅读器是会读:“选择您的职位”

<body> 
 <div class="dropdown"> 
  <button type="button" class="btn dropdown-toggle" id="dropdownMenu1" 
   data-toggle="dropdown"> 
   选择您的职位 
   <span class="caret"></span> 
  </button> 
  <ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu1"> 
   <li role="presentation"> 
    <a role="menuitem" tabindex="-1" href="#">测试工程师</a> 
   </li> 
   <li role="presentation"> 
    <a role="menuitem" tabindex="-1" href="#">开发工程师</a> 
   </li> 
   <li role="presentation"> 
    <a role="menuitem" tabindex="-1" href="#">销售工程师</a> 
   </li>   
  </ul> 
 </div> 
</body>

详解Bootstrap的aria-label和aria-labelledby应用

PS:如果一个元素同时有aria-labelledby和aria-label,读屏软件会优先读出aria-labelledby的内容

以上内容是小编给大家介绍的Bootstrap的aria-label和aria-labelledby应用相关内容,希望本文分享能够给大家带来帮助,同时感谢大家一直以来对三水点靠木网站的支持。

Javascript 相关文章推荐
非常好的js代码
Jun 27 Javascript
一段非常简单的让图片自动切换js代码
Nov 10 Javascript
js异步加载的三种解决方案
Mar 04 Javascript
jQuery Trim去除字符串首尾空字符的实现方法说明
Feb 11 Javascript
IE7浏览器窗口大小改变事件执行多次bug及IE6/IE7/IE8下resize问题
Aug 21 Javascript
AngularJs Managing Service Dependencies详解
Sep 02 Javascript
详解vue 中使用 AJAX获取数据的方法
Jan 18 Javascript
js获取文件里面的所有文件名(实例)
Oct 17 Javascript
layui实现下拉框三级联动
Jul 26 Javascript
微信小程序实现多选框全选与反全选及购物车中删除选中的商品功能
Dec 17 Javascript
js实现验证码功能
Jul 24 Javascript
四十九个javascript小知识实用技巧
Nov 20 Javascript
详解Bootstrap glyphicons字体图标
Jan 04 #Javascript
详解Bootstrap按钮
Jan 04 #Javascript
详解Bootstrap四种图片样式
Jan 04 #Javascript
学习javascript面向对象 理解javascript原型和原型链
Jan 04 #Javascript
详解Bootstrap创建表单的三种格式(一)
Jan 04 #Javascript
学习javascript面向对象 实例讲解面向对象选项卡
Jan 04 #Javascript
学习javascript面向对象 javascript实现继承的方式
Jan 04 #Javascript
You might like
两种php调用Java对象的方法
2006/10/09 PHP
Laravel 5 框架入门(四)完结篇
2015/04/09 PHP
js用图作提交按钮或超连接
2008/03/26 Javascript
JQuery的AJAX实现文件下载的小例子
2013/05/15 Javascript
jQuery实现表单提交时判断的方法
2014/12/13 Javascript
Javascript递归打印Document层次关系实例分析
2015/05/15 Javascript
详解javascript中原始数据类型Null和Undefined
2015/12/17 Javascript
jquery实现手机端单店铺购物车结算删除功能
2017/02/22 Javascript
JS简单获取日期相差天数的方法
2017/04/24 Javascript
Bootstrap 模态对话框只加载一次 remote 数据的完美解决办法
2017/07/09 Javascript
vue.js框架实现表单排序和分页效果
2017/08/09 Javascript
微信小程序基于slider组件动态修改标签透明度的方法示例
2017/12/04 Javascript
js实现倒计时器自定义时间和暂停
2019/02/25 Javascript
详解小程序云开发攻略(解决最棘手的问题)
2019/09/30 Javascript
vue 对axios get pust put delete封装的实例代码
2020/01/05 Javascript
vscode 插件开发 + vue的操作方法
2020/06/05 Javascript
vue element ui validate 主动触发错误提示操作
2020/09/21 Javascript
[01:10]3.19DOTA2发布会 三代刀塔人第一代
2014/03/25 DOTA
Python中的CURL PycURL使用例子
2014/06/01 Python
Flask框架的学习指南之用户登录管理
2016/11/20 Python
Python 网络爬虫--关于简单的模拟登录实例讲解
2018/06/01 Python
深入浅析python3中的unicode和bytes问题
2019/07/03 Python
python函数不定长参数使用方法解析
2019/12/14 Python
Python通过socketserver处理多个链接
2020/03/18 Python
python安装和pycharm环境搭建设置方法
2020/05/27 Python
一篇文章带你搞定Ubuntu中打开Pycharm总是卡顿崩溃
2020/11/02 Python
Python ellipsis 的用法详解
2020/11/20 Python
PPP协议组成及简述协议协商的基本过程
2015/05/28 面试题
Linux管理员面试经常问道的相关命令
2013/04/29 面试题
系统管理员的职责包括那些?管理的对象是什么?
2016/09/20 面试题
模具专业毕业生自荐书范文
2014/02/19 职场文书
个人年底工作总结
2015/03/10 职场文书
小学大队干部竞选稿
2015/11/20 职场文书
《伯牙绝弦》教学反思
2016/02/16 职场文书
幼儿园教学反思范文
2016/03/02 职场文书
详解php中流行的rpc框架
2021/05/29 PHP