26 March 2014
号外号外:我的新书《现代JavaScript库开发:原理、技术与实战》出版啦!!!快点我查看
号外号外:一组小而美的JavaScript迷你库!!!快点我查看
号外号外:猿辅导招聘前端,后端,客户端啦!地点:北京!!!快点我查看

如果你想对使用手机,平板电脑和辅助技术的用户隐藏某些内容,而只对键盘用户显示,那么请使用title属性。

细节

HTML的title属性本身有问题。之所以有问题是因为它在一些重要的方面表现的不够好,尽管它陪伴我们超过14年了。随着触摸设备的兴起,这个属性的作用进一步降低。title属性的可访问性变得很鸡肋,由于缺少浏览器的支持,屏幕阅读器的支持和制作人员的重视。

下列情况下title属性由于缺乏支持变得多余:

  • 对于在手机浏览器里访问web内容信息的人。通常title属性的内容在桌面浏览器里显示为提示信息。据我所知,没有任何手机浏览器支持显示提示信息,并且也没有其他访问title属性内容的视觉方法。
  • 对于那些无法使用鼠标的人提供信息。通常title属性的内容在桌面浏览器里显示为提示信息。虽然提示信息的行为已经有10多年历史,但一直没有浏览器实现使用键盘显示title属性的方法。
  • 对于在大多数HTML元素上使用它为使用各种辅助技术的人提供信息。据我所知屏幕阅读器对访问title属性信息一致不支持。

title属性不友好用户如下

  • 手机用户
  • 仅使用键盘的用户
  • 使用屏幕放大器的用户
  • 屏幕阅读器用户
  • 精细运动技能障碍的用户
  • 认知障碍的用户

title属性有用的例子:

  • 为frame或iframe元素贴上标签:
    • <frame title="navigation">
  • 提供需要程序才能实现的在特殊情况下才显示的标签,直接使用可见的文本标签会显得多余:
  • 为不能作为文本的链接或周围内容添加额外信息:
    • <a href="newsletter.PDF" title="PDF file, size 1 mb.">newsletter</a>
    • 相反这样的信息应该作为链接文本的部分或在链接的旁边。
  • 提供和链接文本相同的信息:
    • <a href="newsletter.PDF" title="newsletter">newsletter</a>
    • 建议不要复制链接内容作为title属性。这其实相当于什么都没做。
  • 用于图像的标题:
    • <img src="castle1858.jpeg" title="Oil-based paint on canvas. Maria Towle, 1858." alt="The castle now has two towers and two walls.">
    • 大概标题信息是最重要的信息,应该能被所有用户默认访问。如果是这样,那么这个内容应该紧挨着图片。
  • 用来代替表单的标签,去掉可见的文本标签:
    • <input type="text" title="name">
    • 屏幕阅读器的用户将会访问表单元素的标签,由于title属性被列入可访问性api内的属性名称(当文本标签使用标签元素时是不被支持的)。许多其他用户并不如此。建议尽可能包括一个可见的文本标签。
  • 为表单元素提供和可见的标签内容相同的信息:
    • <label for="n1">name</label> <input type="text" title="name" id="n1">
    • 重复可见的标签文本不可能除了添加一系列的用户认知噪声。不做它。重复可见的标签文本除了添加一系列令人讨厌的认知噪声外,似乎没有其他作用,停止这种用法。
  • 为表单元素提供额外的指令:
    • <label for="n1">name</label> <input type="text" title="Please use uppercase."id="n1">
    • 如果这指令对于正确的使用表单元素非常重要,请在元素周围提供文字信息,确保每个用户都能读到。
  • 作为缩写的扩展:
    • <abbr title="world wide web consortium">W3C</abbr>
    • 虽然abbr元素的title属性被屏幕阅读器软件所支持,但使用它仍然是有问题的,因为其他用户群无法使用。建议当缩写词在文档中首次出现时提供文本格式的全称,或提供全称形式的术语表。这并不是说不可以使用title属性,因其具有局限性,应该提供文本形式的全称。

HTML 5.1 包括使用title属性的一般性建议:

依赖title属性目前是不被鼓励的,由于许多用户代理不能按照规范的要求显示这个属性(如需要鼠标指针设备引起提示信息的显示,排除了仅使用键盘的用户和触摸屏用户)

来源: HTML 5.1 – title属性

用title属性代替img元素的alt属性或作为图片的标题是被禁止的

依托title属性目前来看是被禁止的,由于许多用户代理对这属性的可访问性支持很差……

来源: HTML 5.1

扩展阅读

原文:http://blog.paciellogroup.com/2010/11/using-the-html-title-attribute/

原文网址:http://yanhaijing.com/html/2014/03/26/using-the-html-title-attribute/

微信公众号:颜海镜
关注微信公众号 颜海镜
微信支付二维码
赞赏支持 微信扫一扫


暂无评论,抢沙发!!!