This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 17970 - Define <th abbr=""> as a way to provide a name for a row/column that is used when describing cells for which that cell is a header
Summary: Define <th abbr=""> as a way to provide a name for a row/column that is used ...
Status: RESOLVED FIXED
Alias: None
Product: WHATWG
Classification: Unclassified
Component: HTML (show other bugs)
Version: unspecified
Hardware: Other other
: P3 enhancement
Target Milestone: Unsorted
Assignee: Ian 'Hixie' Hickson
QA Contact: contributor
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-07-18 07:25 UTC by contributor
Modified: 2012-10-19 22:23 UTC (History)
11 users (show)

See Also:


Attachments

Description contributor 2012-07-18 07:25:44 UTC
This was was cloned from bug 13614 as part of operation convergence.
Originally filed: 2011-08-03 16:45:00 +0000
Original reporter: James Nurthen <w3cbugzilla@nurthen.com>

================================================================================
 #0   James Nurthen                                   2011-08-03 16:45:19 +0000 
--------------------------------------------------------------------------------
The abbr attribute on TH and TD provides a useful technique for providing an abbreviated column/row header for assistive technology users. 

This technique is well supported by Screen readers.

An example use case is when additional controls are added into the table header, such as controls to allow sorting of the table column. For example

<TH abbr="Last Name">Last Name<a ...><img ... alt="sort ascending"></a><a ...><img ... alt="sort ascending"></a></TH>

When reading through the first row of the table a screen reader will read the links to enable sorting but when reading the body of the table and moving from column to column a screen reader user will not be bothered by the repetitive sort ascending and sort descending links.

This technique is frequently used.
================================================================================
 #2   Leif Halvard Silli                              2011-08-10 19:25:14 +0000 
--------------------------------------------------------------------------------
Additionally - as noted in HTML4 - the @abbr content could replace the "normal" content.  E.g. on small screens. This starts to become well supported - via CSS..
================================================================================
 #3   theimp@iinet.net.au                             2011-11-29 13:24:00 +0000 
--------------------------------------------------------------------------------
Similar to Bug 14107, the non-conformance of the ABBR attribute for the TH and TD elements makes Web Content Accessibility Guidelines 1.0 compliance impossible (Checkpoint 5.6).

Checkpoint 5.5 and 5.6 are the only checkpoints in WCAG 1.0, that list only a single normative non-negative example, for HTML, of how to meet that checkpoint, with specific elements or attributes that are required, that are unambiguous, where that element or attribute is being made obsolete.

The exact text is:
For example, in HTML, use the "abbr" attribute on the TH element.

Maybe, as with @summary, keeping it is a "safe" option, which can be phased out in future spec. revisions if other alternatives become better supported (ARIA…)
================================================================================
 #4   Laura Carlson                                   2011-11-29 13:29:45 +0000 
--------------------------------------------------------------------------------
Summary is completely obsolete in HTML5. Obsolete features must not be used by authors. 
http://www.w3.org/TR/2011/WD-html5-20110525/obsolete.html#non-conforming-features
================================================================================
 #5   theimp@iinet.net.au                             2011-11-29 13:32:54 +0000 
--------------------------------------------------------------------------------
> Summary is completely obsolete in HTML5. Obsolete features must not be used by
authors.

Hence Bug 14107, and the formal objection to the resolution of Issue 32.
http://lists.w3.org/Archives/Public/public-html-a11y/2011Jul/0075.html
http://www.w3.org/html/wg/wiki/ChangeProposals/ReinstateTableSummary
================================================================================
 #6   Laura Carlson                                   2011-11-29 13:57:17 +0000 
--------------------------------------------------------------------------------
Exactly. I hope it changes but as of this moment @summary is not "safe" it is obsolete.
================================================================================
 #7   theimp@iinet.net.au                             2011-11-29 14:01:51 +0000 
--------------------------------------------------------------------------------
> as of this moment @summary is not "safe" it is obsolete.

Sorry, I meant that keeping it would be the safe choice, not that this was the currently the case for @summary.
================================================================================
 #8   James Nurthen                                   2011-12-01 18:49:04 +0000 
--------------------------------------------------------------------------------
Note that as well as implementations in Assistive Technology, the abbr attribute is also implemented in FF11 - see https://bugzilla.mozilla.org/show_bug.cgi?id=704754
================================================================================
 #9   Ian 'Hixie' Hickson                             2011-12-02 19:07:57 +0000 
--------------------------------------------------------------------------------
Status: Rejected
Change Description: no spec change
Rationale: abbr="" is unnecessary. Users quickly navigate through tables using their ATs and so it's not helpful for the UA to be omitting content.
================================================================================
 #10  Benjamin Hawkes-Lewis                           2011-12-02 20:01:09 +0000 
--------------------------------------------------------------------------------
(In reply to comment #0)
> This technique is frequently used.

IIRC I used @abbr for that a few years ago for some data tables on Yahoo! Finance UK. The table headers included links to footnotes explaining the data. I used @abbr to exclude the anchor text when screenreaders repeated the names of the headers for a given cell. Unfortunately, that site has long since been redesigned.

Can we collect some examples of current, helpful usage?

IIRC the last time this was discussed collected examples suggested popular usage was to use @abbr to _expand_ abbreviated headers rather than contract them (in calendar widgets, e.g. <th abbr="Monday">M</th>.

If @abbr is helping users, I'm not sure its usage matches that suggested by HTML4.
================================================================================
 #11  James Nurthen                                   2011-12-07 17:33:52 +0000 
--------------------------------------------------------------------------------
abbr is necessary. All the extra redundant information which is placed into the TH cell such as sort controls is unnecessary, redundant and confusing when navigating around a table in table mode of a screen reader.
If you remove this please provide a replacement which provides the same functionality.

This technique already has good support in AT, now has support in future FF and is in common use in HTML based web applications. We use this technique in (amongst others) Oracle Fusion Applications, Oracle Enterprise Manager, Siebel Applications, Oracle E-Business Suite. You will find none of these pages when you search the google cache as they are typically deployed behind firewalls so any data you find on usage of abbr is misleading.
================================================================================
 #12  Ian 'Hixie' Hickson                             2011-12-07 20:22:13 +0000 
--------------------------------------------------------------------------------
Ah, I misunderstood. You're not saying the abbr="" value is used when reading the cell, you're saying it's the value used when describing the headings for another cell for which this one is the header. Is that right?
================================================================================
 #13  James Nurthen                                   2011-12-07 21:10:33 +0000 
--------------------------------------------------------------------------------
Exactly
================================================================================
 #14  Benjamin Hawkes-Lewis                           2011-12-08 07:32:51 +0000 
--------------------------------------------------------------------------------
Example of using @abbr in this way in a public JQuery plugin:

https://groups.google.com/group/free-aria/browse_thread/thread/96156d857f35e10d/
================================================================================
 #15  Benjamin Hawkes-Lewis                           2011-12-08 07:37:30 +0000 
--------------------------------------------------------------------------------
Wayback has screwed with the styles, but I have tracked down an example of my table markup for Yahoo! finance

http://web.archive.org/web/20080513154741/http://uk.biz.yahoo.com/16/sector.html

Example of using @abbr to exclude a footnote link when reading the cell as a header for other cells:

<th id="performance-hdr" colspan="5" abbr="Performance">Performance<a id="perf-note-ref" href="http://web.archive.org/web/20080513154741/http://uk.biz.yahoo.com/16/sector.html#performance-note-anchor" class="note-ref" title="Note about performance">1</a></th>
================================================================================
 #16  Benjamin Hawkes-Lewis                           2011-12-08 07:41:26 +0000 
--------------------------------------------------------------------------------
(In reply to comment #15)
Also note use for just shortening verbose text:

<th abbr="annual charge" id="annual-management-charge-hdr">Annual Management Charge (%)</th>

<th abbr="rank over 3 years" id="quartile-rank-over-three-years-hdr">Quartile Rank over 3 Years</th>
================================================================================
 #17  Ian 'Hixie' Hickson                             2012-01-31 20:56:39 +0000 
--------------------------------------------------------------------------------
I looked at the Web and it seems this is used quite a lot in blog calendars, not to abbreviate the column header but to expand it. I didn't see many other valid uses in a brief check. I didn't see any harmful uses either. In conclusion, I think it's worth putting in.
================================================================================
Comment 1 contributor 2012-10-19 22:23:12 UTC
Checked in as WHATWG revision r7477.
Check-in comment: Spec <th abbr>.
http://html5.org/tools/web-apps-tracker?from=7476&to=7477