[PHP] Re: Accessible HTML - OT
* Mikey [EMAIL PROTECTED]: I have just come back from the client visit and one of the issues that arose was over the use of accessible markup, more specifically the use of tables versus the use of layers. Now, my long held belief was that div/layers were added to the spec so that designers could separate presentation markup from content - that is, use positioned layers for laying out content, use tables for tables of data as they were originally intended. However, my client seemed adamant that it was the other way around and that the use of tables was preferred owing to browser compatibility issues. Now, I have just had a look around w3 and have found some inferences that support my view but nothing that states clearly in either direction. Does anyone on this list have a definitive answer for this one? You have it correct, theoretically, regarding accessibility. Tables should be used for tabular data, divs for presentation and layout. However, many people confuse accessibility with consistency; they want a look-and-feel that works the same no matter what the browser. (Why they feel this is accessibility is anybody's guess, but I've seen it a number of times). In this latter arena, on a practical level, tables are typically your best bet. I've done a lot of tableless and table-based layouts, and the unfortunate fact of the matter is it's a lot easier to create a layout that is consistent cross-browser and cross-platform using tables. Until IE supports the CSS2 'display: table-*' elements (which is the easiest way of creating columns of the same height), this will continue to be the case. Now, this does not mean you should create a bunch of nested tables for the layout. I find that a simple skeleton made of a table with a few columns can create the basic page layout, and then I use as much CSS as I can within (unordered lists for navigation menus, floats to position image/caption pairs, etc.). This combines some of the best of both worlds, and creates a fairly accessible page at the same time. As in all things, it's a matter of balance. -- Matthew Weier O'Phinney | WEBSITES: Webmaster and IT Specialist | http://www.garden.org National Gardening Association| http://www.kidsgardening.com 802-863-5251 x156 | http://nationalgardenmonth.org mailto:[EMAIL PROTECTED] | http://vermontbotanical.org -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: Accessible HTML - OT
Nested tables are the absolute worst thing you can do! A screen reader is able to tab to a table and tab within a table but once you begin to have tables within tables, UGH! To quote accessibility guru Joe Clark; With nested tables, a screen reader user ends up working from within a maze formed by one table within another. All you coders out there know how hard it is to code nested tables and how confusing it gets right? Imagine trying to reverse engineer this jumbled mess with nothing but audio to go on! Matthew Weier O'Phinney wrote, On 10/05/05 01:59 AM: * Mikey [EMAIL PROTECTED]: I have just come back from the client visit and one of the issues that arose was over the use of accessible markup, more specifically the use of tables versus the use of layers. Now, my long held belief was that div/layers were added to the spec so that designers could separate presentation markup from content - that is, use positioned layers for laying out content, use tables for tables of data as they were originally intended. However, my client seemed adamant that it was the other way around and that the use of tables was preferred owing to browser compatibility issues. Now, I have just had a look around w3 and have found some inferences that support my view but nothing that states clearly in either direction. Does anyone on this list have a definitive answer for this one? You have it correct, theoretically, regarding accessibility. Tables should be used for tabular data, divs for presentation and layout. However, many people confuse accessibility with consistency; they want a look-and-feel that works the same no matter what the browser. (Why they feel this is accessibility is anybody's guess, but I've seen it a number of times). In this latter arena, on a practical level, tables are typically your best bet. I've done a lot of tableless and table-based layouts, and the unfortunate fact of the matter is it's a lot easier to create a layout that is consistent cross-browser and cross-platform using tables. Until IE supports the CSS2 'display: table-*' elements (which is the easiest way of creating columns of the same height), this will continue to be the case. Now, this does not mean you should create a bunch of nested tables for the layout. I find that a simple skeleton made of a table with a few columns can create the basic page layout, and then I use as much CSS as I can within (unordered lists for navigation menus, floats to position image/caption pairs, etc.). This combines some of the best of both worlds, and creates a fairly accessible page at the same time. As in all things, it's a matter of balance. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: Accessible HTML - OT
* Mary-Anne Nayler [EMAIL PROTECTED] : Nested tables are the absolute worst thing you can do! I agree -- which, if you read my post, you'll see I didn't advocate nested tables -- just a single table for columnar layout of the page. Within each column, items are floated or positioned using CSS. A screen reader is able to tab to a table and tab within a table but once you begin to have tables within tables, UGH! I use text-based browsers regularly, and, while tables can be rendered fine in many of them, nested tables get very ugly, very fast -- especially if the terminal you use is limited to 80 characters. To quote accessibility guru Joe Clark; With nested tables, a screen reader user ends up working from within a maze formed by one table within another. All you coders out there know how hard it is to code nested tables and how confusing it gets right? Imagine trying to reverse engineer this jumbled mess with nothing but audio to go on! Absolutely. This is the argument I use when trying to convince others to use a standards-compliant design. But often the customer (or your boss) will ditch this kind of accessibility for some simple cross-platform cross-browser consistency (not realizing that the cosmetic tweaks used to do this mean that even though the site looks good on a Mac, a Windows machine, and some linux browsers, it reads like a complete foreign language in audio browsers or text-based browsers). In the end, on a practical level, I often am not *allowed* to make a tableless design due to the wishes of my boss or client. And, unfortunately, I have to pay the bills so my family and I have a place to live and food to eat, so I can't simply refuse a job based on principle. That's pretty much all I was getting at in my first post. Matthew Weier O'Phinney wrote, On 10/05/05 01:59 AM: * Mikey [EMAIL PROTECTED] : I have just come back from the client visit and one of the issues that arose was over the use of accessible markup, more specifically the use of tables versus the use of layers. Now, my long held belief was that div/layers were added to the spec so that designers could separate presentation markup from content - that is, use positioned layers for laying out content, use tables for tables of data as they were originally intended. However, my client seemed adamant that it was the other way around and that the use of tables was preferred owing to browser compatibility issues. Now, I have just had a look around w3 and have found some inferences that support my view but nothing that states clearly in either direction. Does anyone on this list have a definitive answer for this one? You have it correct, theoretically, regarding accessibility. Tables should be used for tabular data, divs for presentation and layout. However, many people confuse accessibility with consistency; they want a look-and-feel that works the same no matter what the browser. (Why they feel this is accessibility is anybody's guess, but I've seen it a number of times). In this latter arena, on a practical level, tables are typically your best bet. I've done a lot of tableless and table-based layouts, and the unfortunate fact of the matter is it's a lot easier to create a layout that is consistent cross-browser and cross-platform using tables. Until IE supports the CSS2 'display: table-*' elements (which is the easiest way of creating columns of the same height), this will continue to be the case. Now, this does not mean you should create a bunch of nested tables for the layout. I find that a simple skeleton made of a table with a few columns can create the basic page layout, and then I use as much CSS as I can within (unordered lists for navigation menus, floats to position image/caption pairs, etc.). This combines some of the best of both worlds, and creates a fairly accessible page at the same time. As in all things, it's a matter of balance. -- Matthew Weier O'Phinney | WEBSITES: Webmaster and IT Specialist | http://www.garden.org National Gardening Association| http://www.kidsgardening.com 802-863-5251 x156 | http://nationalgardenmonth.org mailto:[EMAIL PROTECTED] | http://vermontbotanical.org -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: Accessible HTML - OT
Hello, on 05/09/2005 08:24 PM Mary-Anne Nayler said the following: Nested tables are the absolute worst thing you can do! A screen reader is able to tab to a table and tab within a table but once you begin to have tables within tables, UGH! To quote accessibility guru Joe Clark; With nested tables, a screen reader user ends up working from within a maze formed by one table within another. All you coders out there know how hard it is to code nested tables and how confusing it gets right? Imagine trying to reverse engineer this jumbled mess with nothing but audio to go on! I know that very few sites use it, but I think that is why the attribute tabindex exists: http://www.w3.org/TR/html401/interact/forms.html#adef-tabindex The way I see it there are more non-obvious reasons that preachers of usability without tables miss, like the fact that the alternatives that they suggest based on CSS/DIV/SPAN give other headaches to site developers that want to implement sites that look the same in different browsers but sometimes is almost impossible as such browsers do not interpret the standards the same way. Probably because tables were introduced long before the DIV/SPAN layout based mania, it seems tables work more reliably and allow developers to assure a more consistent visual across browsers. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php