网站508规范(译)(5)
作者:kllb520 来源:蓝色理想 发布时间:2008-04-03 13:26:00
<g>和<h>数据表[Data Table]
<g>对于数据表来说,要声明其行和列的标题。
<h>对于行与列的表头有两层以上逻辑的数据表格,数据单元格与标题单元格应使用标记语言关联起来。
为什么这两项条文是必要的?
本条第<g> 及<h>允许使用表,但要求该表必须按照标记语言的规则来创建表。如果有人用非视觉的方式访问网页,包含大量数据的数据将会难以解释。用屏幕阅读的用户可能很容易“迷失”在一个表格中,因为屏幕阅读器是阅读与相应栏标题和列的名字,这也许不能准确到某一特定单元格。举例来说,假设有一张工资表包括了联邦雇员的工资,按职称和等级分类。表中的每列可能代表了一个职称,每行代表了一个等级。因此,找到职称级别为9,等级为5的工资可能涉及查找表格上的第9列的第五行。一个工资图表有15个职称和10个等级,则该表将有至少150个单元格。没有一种方法把标题和每个单元格联想到一起,那就很容易想象一个用户在运用辅助技术时遇到表格的困难了。
第1194.22标准 <g>及<h>要求当信息显示在一个表格时,这些信息应使用适当的表格标签,因为反对使用协助标签像" <pre> "的预排表。网页设计师也必须使用其中一种方法,以提供标题和其相关的信息的关联。
怎样才能使HTML表格运用辅助技术获得可读性呢?
在表格中使用“Scope” 属性,“Scope”属性是其中一个最有效的办法使HTML符合这些要求,它也是执行起来最简单的方法。Scope属性还与一些(但不是全部)辅助技术一起发挥作用,在表中使用" colspan "或" rowspan "属性能够影响标题或是数据单元格。
使用Scope属性——第一行的每个表应包括行标题。通常情况下,这些行标题插入到<th>标签,虽然<td>标签也可以使用。在最上面的这些标签每一栏中应包括以下属性:
scope="col"
通过这个简单的步骤,单元格中的内容和这一行的每一个单元格关联在一起了。不像用其他方法(特别是"id" ,"header" )没有必要在表格的单元格中包含特殊的属性。同样,每一个表的第一列应该包含标题信息。第一列的单元格用<th>或<td>标签创建。这些单元格包括以下属性:
scope="row"
通过简单地增加这个属性,单元格中的内容和这一列的每一个单元格关联在一起了。虽然这一技术大大提高了网页的可用性,使用Scope属性不会以任何方式干预不支持此属性的浏览器。
源代码示例——以下是一个总结了三名雇员工作日程的简单表,并体现了这些原则。
表格显示如下:
Spring Summer Autumn Winter
Betty 9-5 10-6 8-4 7-3
Wilma 10-6 10-6 9-5 9-5
Fred 10-6 10-6 10-6 10-6
在大表格中使用Scope属性的效率变得更加明显。例如,如果一个机构使用了一个20行和20列的表格,其中将有400个数据单元格。如果要是此表格在不使用Scope属性的情况下遵守这个条款,将要在所有的400数据单元格上标上特殊代码,再加上40个行和列的表头单元格。相比之下,使用Scope属性只需在40个行和列的表头标上特殊代码就可以了。
在表格中使用“id”和“headers”属性
不像使用“Scope”属性,使用“id”和“headers”属性必须在表格的每个数据单元格里加入特殊属性才能让他们关联起来。虽然“id”和“headers”属性在浏览器提供支持“Scope”属性的的情况下在为可用性的效应可能已经减弱,但它们还是非常有用的,并提供一种使用的手段为访问较小的表格。
下表是比以前的例子更为复杂的表格,展现了使用"id" ,"headers"属性,还有Scope属性。这两种方法为网页中的数据表格符合本条款提供了一种手段。这个例子中,包括了两名雇员的工作时间表。每个雇员上午和下午的工作日程都不同,当他在冬季或夏季几个月中受雇工作时。
"夏天"和"冬天"栏目,每个跨度两栏标有"上午"及"下午" 。 因此,每个单元格确定一个雇员的工作日程,使用者只需知道员工的姓名(Fred 或 Wilma) ,季节(Summer 或 Winter) ,以及值班时间(morning 或 afternoon)。
表格显示如下:
Winter Summer
Morning Afternoon Morning Afternoon
Wilma 9-11 12-6 7-11 12-3
Fred 10-11 12-6 9-11 12-5
为每个单元格使用“id”和“headers”属性编码比“Scope”属性更为复杂。使用“Scope”属性如下所示:
这个表格显示如下:
Winter Summer
Morning Afternoon Morning Afternoon
Wilma 9-11 12-6 7-11 12-3
Fred 10-11 12-6 9-11 12-5
是“summary”属性的一种选择吗?
虽然很多网页设计师极力推荐的在一张表格中总结内容的方式,但是辅助技术制造商没有对表格中的“summary”属性提供足够的支持。因此一些对总结表格内容有兴趣的web开发人员将总结内容附在表格周围或是用CAPTION标签附在表格内部。在任何情况下,web开发人员应该使用总结性表格,就像是上文说的方法关联表格中的内容.


猜你喜欢
- 协同过滤在 用户 —— 物品(user - item)的数据关系下很容易收集到一些偏好信息(preference),比如评分。利用这些分散的
- 之前用Crystal做了一个数字转English Word的Formula刚刚心血来潮, 大半个晚上写了JS版本的数字转换, 由于JS的Bu
- 不知道有没有人碰到过这样恶心的问题:两张表连接查询并limit,SQL效率很高,但是加上order by以后,语句的执行时间变的巨长,效率巨
- TF-IDF(term frequency–inverse document frequency)是一种用于信息检索(information
- 前言:我们想要在爬虫中使用xpath、beautifulsoup、正则表达式,css选择器等来提取想要的数据,但是因为scrapy是一个比较
- 本文主要介绍了Python3中PyQt5简单实现文件打开及保存,分享给大家,具体如下:# -*- coding: utf-8 -*-# Fo
- Python自带的pdb库,发现用pdb来调试程序还是很方便的,当然了,什么远程调试,多线程之类,pdb是搞不定的。用pdb调试有多种方式可
- 序言哈喽兄弟们,今天咱们来了解一下 fileinput 。说到fileinput,可能90%的码农表示没用过,甚至没有听说过。这不奇怪,因为
- 在许多编程语言中都包含有格式化字符串的功能,比如C和Fortran语言中的格式化输入输出。Python中内置有对字符串进行格式化的操作%。模
- view视图import reimport osimport mimetypesfrom wsgiref.util import FileW
- 本文实例为大家分享了python使用turtle库绘制树的具体代码,供大家参考,具体内容如下# -*- coding: utf-8 -*-&
- 一、背景介绍3月2日凌晨,OpenAI放出了真正的ChatGPT API,不是背后的GPT-3.5大模型,是ChatGPT的本体模型!Cha
- 获取带有中文参数的url内容对于中文的参数如果不进行编码的话,python的urllib2直接处理会报错,我们可以先将中文转换成utf- 8
- php二维数组排序测试数据 $arr = [
- pycharm指定python路径,pycharm配置python环境的方法是:1、依次点击【File】、【Project Interpre
- lambda表达式python中形如:lambda parameters: expression称为lambda表达式,用于创建匿名函数,该
- 可以利用in运算符来进行判断,如果在指定的序列中找到值返回True,否则返回False。运算符not in表示如果在指定的序列中没有找到值返
- python代码包的用途当你想打包一个目录时,需要现在目录中放一个_init_.py,该文件叫包初始化文件,文件可以为空,也可以放一些代码。
- 前言今天给大家分析3个计算机视觉方向的Python实用代码,主要用到的库有:opencv-pythonnumpypillow要是大家所配置的
- 内容摘要合理使用渐变留白网格布局提高字体应用明确而有效的导航设计漂亮、有用的页脚介绍优秀设计和卓越设计之间的区别是比较小的。一般人可能无法解