473,396 Members | 1,998 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

Accessibility simplification for highly-dimensional table

When a table has multiple layers of column and/or row headings, as we know,
there are a couple of options for making the table accessible. Using a
*scope* attribute is fine as long as the number of column levels or row
levels doesn't exceed two, since you can only specify "col" and "colgroup"
as scope values in the former case, and "row" or "rowgroup" in the latter.

Then there's the use of *id*, *headers*, and *axis*. For most purposes, I
wonder whether it's over the top. It's highly involved, and in particular
the axis attribute seems to be going overboard unless the kind of tricks
they would permit a user agent to perform computationally are something you
would have wanted to enable even without accessibility considerations. It's
also awkward if it isn't a question of a simple set of permutations (as at:

http://mywebpages.comcast.net/hmessinger/gdp.html

)

Anyway, please take a look at:

http://mywebpages.comcast.net/hmessi...dim-table.html

I've used <th> for the row headings (states) and for the lowest level of
column headings (the grades). (If this were a real page, of course, I'd use
styles to set a uniform appearance for all three rows of column headings.)
I've set *abbr* and *title* attributes for those column headings thus:

<th abbr="1998 reading grade 4" title="1998 reading grade 4">Grade 4</td>
<th abbr="1998 writing grade 8" title="1998 writing grade 8">Grade 8</td>
<th abbr="1998 reading grade 4" title="1998 reading grade 4">Grade 4</td>
<th abbr="1998 writing grade 8" title="1998 writing grade 8">Grade 8</td>
<th abbr="2000 reading grade 4" title="2000 reading grade 4">Grade 4</td>
<th abbr="2000 writing grade 8" title="2000 writing grade 8">Grade 8</td>
<th abbr="2000 reading grade 4" title="2000 reading grade 4">Grade 4</td>
<th abbr="2000 writing grade 8" title="2000 writing grade 8">Grade 8</td>

Does this accomplish the basic purpose? Is it satisfactory? Should I use
only *abbr* or only *title*?

--
Harlan Messinger
Remove the first dot from my e-mail address.
Veuillez ôter le premier point de mon adresse de courriel.

Jul 20 '05 #1
6 1841
"Harlan Messinger" <h.*********@comcast.net> writes:
Then there's the use of *id*, *headers*, and *axis*. For most purposes, I
wonder whether it's over the top. It's highly involved, and in particular
id/headers is definitely worth doing, since it's the most
widely-supported form of table header/cell assignment markup - I can't
find any browsers that do anything useful with scope, though if anyone
knows of one I'll add it to my collection...
the axis attribute seems to be going overboard unless the kind of tricks
Agreed.
http://mywebpages.comcast.net/hmessi...dim-table.html

I've used <th> for the row headings (states) and for the lowest level of
column headings (the grades). (If this were a real page, of course, I'd use
styles to set a uniform appearance for all three rows of column headings.)
I've set *abbr* and *title* attributes for those column headings thus: <th abbr="1998 reading grade 4" title="1998 reading grade 4">Grade 4</td>
Seems a bit odd to have the ABBReviation longer than the cell content,
(and the abbreviations don't match the cells they're headers for).
Does this accomplish the basic purpose? Is it satisfactory? Should I use
only *abbr* or only *title*?


I think the best way to mark this up would be

http://www.dur.ac.uk/c.i.morris/multitable.html

(Though you could put title="Alabama 1998 reading grade 4" on the
<td>s as appropriate as well, I'm not sure if there's many situations
it would be useful in, but it's not going to harm anything)

(Yes, putting the headers attributes in is fiddly, but with the amount
of data involved if all 50 states were included, it really should be
database (whether SQL or flat-file) driven anyway, in which case your
server-side script and/or HTML preprocessor can take the majority of
the work out of writing it.

A few more examples at
http://www.dur.ac.uk/its/services/we...ority1/tables/

--
Chris
Jul 20 '05 #2

"Chris Morris" <c.********@durham.ac.uk> wrote in message
news:87************@dinopsis.dur.ac.uk...
"Harlan Messinger" <h.*********@comcast.net> writes:
Then there's the use of *id*, *headers*, and *axis*. For most purposes, I wonder whether it's over the top. It's highly involved, and in particular

id/headers is definitely worth doing, since it's the most
widely-supported form of table header/cell assignment markup - I can't
find any browsers that do anything useful with scope, though if anyone
knows of one I'll add it to my collection...
the axis attribute seems to be going overboard unless the kind of tricks
Agreed.
http://mywebpages.comcast.net/hmessi...dim-table.html

I've used <th> for the row headings (states) and for the lowest level of
column headings (the grades). (If this were a real page, of course, I'd

use styles to set a uniform appearance for all three rows of column headings.) I've set *abbr* and *title* attributes for those column headings thus:

<th abbr="1998 reading grade 4" title="1998 reading grade 4">Grade

4</td>
Seems a bit odd to have the ABBReviation longer than the cell content,
(and the abbreviations don't match the cells they're headers for).
Oh, thanks. I threw it together in a hurry. :-)
Does this accomplish the basic purpose? Is it satisfactory? Should I use
only *abbr* or only *title*?
I think the best way to mark this up would be

http://www.dur.ac.uk/c.i.morris/multitable.html

(Though you could put title="Alabama 1998 reading grade 4" on the
<td>s as appropriate as well, I'm not sure if there's many situations
it would be useful in, but it's not going to harm anything)

(Yes, putting the headers attributes in is fiddly, but with the amount
of data involved if all 50 states were included, it really should be
database (whether SQL or flat-file) driven anyway, in which case your
server-side script and/or HTML preprocessor can take the majority of
the work out of writing it.

A few more examples at

http://www.dur.ac.uk/its/services/we...ority1/tables/
--
Chris


Jul 20 '05 #3

[Sorry, hit Send too quickly.]

"Chris Morris" <c.********@durham.ac.uk> wrote in message
news:87************@dinopsis.dur.ac.uk...

(Yes, putting the headers attributes in is fiddly, but with the amount
of data involved if all 50 states were included, it really should be
database (whether SQL or flat-file) driven anyway, in which case your
server-side script and/or HTML preprocessor can take the majority of
the work out of writing it.

Certainly, if it were database-generated. Not always an option!
A few more examples at

http://www.dur.ac.uk/its/services/we...ority1/tables/

Thanks for this.

Jul 20 '05 #4
In article Harlan Messinger wrote:
"Chris Morris" <c.********@durham.ac.uk> wrote in message
news:87************@dinopsis.dur.ac.uk...

(Yes, putting the headers attributes in is fiddly, but with the amount
of data involved if all 50 states were included, it really should be
database (whether SQL or flat-file) driven anyway, in which case your
server-side script and/or HTML preprocessor can take the majority of
the work out of writing it.


Certainly, if it were database-generated. Not always an option!


Nobody forbids to generate table using script, even if data would not be
stored in serious database. Anyway, you usually have data somewhere when
you start marking up a table. And when you don't, it makes usually sence
to write it down first, and then making it a table.

I¹ parse my Transcript of records from email like this
http://www.student.oulu.fi/~laurirai/crap/ote.txt
(pretty much worst possible format.) to this table:
http://www.student.oulu.fi/~laurirai...ranscript.html
using this perl:
http://www.student.oulu.fi/~laurirai/opiskelu/ote.pl

I think I actually saved time² compared to marking it up by hand,
considering I want it in two languages. And, of course as updating is n
times easier using script. If I had used accessibility markup³, it would
be sure it was faster than do it by hand. If you have some long table,
including something like 50 items, it is practically always fastest to
generate it with script (at least the part that has 50 items.).

And when you do it with script, accessibility markup is probably easier
to add later ;-)

[1] Actually procmail runs the script, all I need to do is to order mail.
[2] Even if this script was first thing I have ever programmed in perl.
[3] I don't think that content of this table really interests anyone but
me, so I didn't bother. May do in future though as exercise...

--
Lauri Raittila <http://www.iki.fi/lr> <http://www.iki.fi/zwak/fonts>
Saapi lähettää meiliä, jos aihe ei liity ryhmään, tai on yksityinen
tjsp., mutta älä lähetä samaa viestiä meilitse ja ryhmään.

Jul 20 '05 #5
Chris Morris wrote:

id/headers is definitely worth doing, since it's the most
widely-supported form of table header/cell assignment markup


I didn't know what browsers did with such information. Which browsers?
And how do they use it?

--
Brian
follow the directions in my address to email me

Jul 20 '05 #6
Brian <us*****@julietremblay.com.invalid-remove-this-part> writes:
Chris Morris wrote:
id/headers is definitely worth doing, since it's the most
widely-supported form of table header/cell assignment markup


I didn't know what browsers did with such information. Which browsers?
And how do they use it?


If you can get a demo copy of IBM Home Page Reader to test with,
that's probably best. Test on
http://www.dur.ac.uk/its/services/we...ority1/tables/
or
http://www.dur.ac.uk/its/services/we...amples/tables/
or some other page with a big table on it. (careful of line wrapping)

But in summary, when in table reading mode they hit a <td> that has a
headers attribute, they read the contents of the <th>s with matching
ids (or that th's abbr attribute, if it exists).

So:
....<th id="a1">Foo</th>...
....<th id="i5">Bar</th>...
....<td headers="i5 a1">Baz</td>...
would be read
[Bar Foo] Baz (or possibly [Foo Bar] Baz)
(where the brackets might be read differently)

In browsers with a 2-D visual display and table support such
information is rarely (ever?) used since it's usually obvious enough
from other cues.

--
Chris
Jul 20 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

12
by: JAMESICUS | last post by:
Refer to ..... http://news.com.com/2100-1032-5063444.html James Pickering Pickering Pages http://www.jp29.org/
9
by: Barbara de Zoete | last post by:
I am getting more and more confused as to the meaning of the words 'accessibility' and 'usability' *in the context of the world wide web*. What do these two words mean? How do they differ from one...
5
by: Dave Henson | last post by:
Hi I am checking a site for accessibility and Dreamweaver suggests making sure that the menu is accessible via keyboard as well as mouse (i.e device-independent). A question has arisen which is...
19
by: lolo | last post by:
Hi, I know how validate a page for CSS or HTML, but I didn't found how validate my page for accessibility Thanx for your help
54
by: richard_quick_uk | last post by:
Hi, If anyone's got the time I'd really appreciate any feedback on the accessibility of this site: http://www.cata.co.uk/_index.a­sp
0
by: Veli-Pekka Tätilä | last post by:
Hi, My first post here. I've found some serious accessibility flaws in the Python 2.4 docs and wish they could be rectified over time. I'm very new to Python and initially contacted docs at python...
4
by: waltborders | last post by:
Hi, Because the blind are unable to use a mouse, keyboard navigation is key. A major difficulty is that not all windows forms controls are keyboard 'tab-able' or 'arrow-able' or have "tab...
3
by: Edward Diener | last post by:
According to the CLS specification, the accessibility of the methods for adding, removing, and raising an event must be identical. There appear to be a few problems with this: 1) According to...
8
by: cms-hispano.org | last post by:
i'm building a site about extreme accessibility, i.e.: how (and why) to get sites to become fully accessible, *beyond* W3C Web Accessibility Initiative guidelines. it's far from being completed (i...
9
by: dylan.miller | last post by:
I'm having trouble understanding the internal access modifier. There are many classes in my assembly that should not be accessible outside of the assembly. I've used the internal access modifier...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.