Forum Moderators: not2easy

Message Too Old, No Replies

Going Tableless with CSS...

for accessibility purposes

         

le_gber

10:58 am on Oct 16, 2004 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Hi All,

I just thought I get some of you css clever people advices on how best start moving to css/table-less design.

I have been designing web pages for 3/4 years now and I've set up my own business for almost 2. This month here (in UK) a new DDA (disability discrimination act) has been put in place which depending on how you read it, encompasses corporate/companies' websites in its guidlines.

I've always designed with tables [me ducking behind my pc]for layout and have been using css only for styling.

I want to move away from table design to be able to offer my customers the possibility to opt for a accessible design should they want to i.e. I need to learn accessible site design. Also I beleive that their is going to be a huge market for accessible sites over here very soon. And finally I really believe that accessibility and web standards are the way forward.

So I bought Designing with Web Standards (Zelman) and Eric Meyer on CSS for a starter (still waiting to be delivered) and was wondering what other things you guys were recommending me to do/read/assimilate/try/print/incorporate.

The next item on my agenda - once the books are read and understood - is to redesign my company website accessible-style and also a couple of other personal/business website I own.

So what you guys advise me to do?

Thanks

Leo

Robin_reala

11:26 am on Oct 16, 2004 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



I think you're going to right way already. Here's a few tips I think will help you though:

1) Don't use layout tables at all in a transitional period. Not only do you learn faster if you dump yourself at the deep end, but I've found that trying to mix the two paradigms only leads to stress. There are a few things that are more difficult to layout in CSS (footers, forms, etc) but usually someone has done them before and written about it.

2) Cultivate a set of websites. Personally I like A List Apart and w3schools for tutorial stuff, but I also read blogs like stopdesign, mezzoblue, clagnut etc.

3) diveintoaccessibility.org. Read it.

You're right on accessibility being not only important but a legal requirement now. Certainly the company I work for is taking it very seriously and companies do ask us for specific WAI levels, which can only be a good thing.

mattur

3:20 pm on Oct 16, 2004 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Accessible website design is very important, not just for avoiding disability-discrimination legal issues, but also because, generally speaking, an accessible website uses best practices which also benefit non-disabled visitors and help SEO.

However be aware that eliminating layout tables will not automatically make your site accessible to all. And using layout tables does not make your site automatically inaccessible. Simple table layouts are not a barrier to visually impaired users, however an all-CSS design can provide extra "enhanced-accessibility" features e.g. linearised and high contrast versions of the site content.

But remember that visual-impairment is not the only type of disability. How will your websites support visitors with cognitive-impairments who would need simplified copy?

In reality, organisations always cannot cater to all disabilities and it is my understanding* that the DDA recognises this and accepts that alternatives can be substituted e.g. a shop without a wheelchair access ramp can provide a door bell for wheelchair users to request assistance.

But on the web we have a chance to easily build in good accessibility for most people, and this is a very worthy goal that we should all strive for.

*I'm not a lawyer...

nightva

6:07 pm on Oct 16, 2004 (gmt 0)

10+ Year Member



le_gber,

Just be aware that cross browser compatibility issues while implementing CSS-P (CSS-P is a shorthand term for Cascading Style Sheet Positioning) will give you some trouble starting out. You will have to deal with browser quirks, bugs and browser developer nearsightedness.

MAKE SURE you understand relative vs. absolute position and why container blocks play a big role in which positioning will work in a design situation. Make sure you understand element boxes and the box model, plus the different ways different browsers implement the box model. IE in particular.

Make sure your nesting of divs (we all do it) are kept to the minimum necassary and you know HOW/WHY they nest. I leave the definition of 'necassary' to you and your projects.

Remember, tableless design does NOT mean never using tables. REMEMBER this even more...it does not say ANYWHERE that you MUST go tableless to have an accessible site.

I took myself and my company 'off the deep end' as someone stated here and it actually SLOWED our production rate, increased office stress and magnified on our weakness at the time. It also introduced design dilemas that were initially avoidable and took time to fix.

Granted, we learned a heck of alot by going off the deep end...but NEVER take your clients with you. They usually drown alot faster than you might in the process.

We are in a transitional period so use that to your advantage. This industry accepted period took the early CSS developers/advocates nearly 5 years (possibly more) to achieve.

This time is transitional. Use it to transition gently.

I'd love to keep in contact with you to offer our mistakes and trails as learning tools. Send me an email using this forum if you'd like to keep this dialogue open.

Nathan

createErrorMsg

7:55 pm on Oct 16, 2004 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Open the W3C CSS Specs [w3.org] in a browser window the minute you turn on your computer and never close the thing down. As you read books, online tutorials, or posts here on WebmasterWorld, click over and read the specifications for every property and value you do not already understand. Those spec pages are THE BEST source for understanding CSS.

The unfortunate downside is that they are written in pretty heavy tech-speak that takes some getting used to. The best way to cut through it, though, is to keep on reading it. Eventually, you start to pick up on the language. All by themselves, the specs are too cryptic to be of much use, but when referred to as you read about cSS in more normal-person geared sources, they are absolutely invaluable.

Best of luck,
cEM

Julius

6:04 pm on Oct 17, 2004 (gmt 0)

10+ Year Member



I'm just in process of converting to a 100% css designed site.
I deferred doing this because of not wanting the pain of browser quirks.

My pages are generated from perl so it is relatively easy for me to change markup for a whole site.

I'm doing it in two stages:
first: tables with css for specifying all the styles of font, margins, colours etc.
second - the current stage - the css layout.

To generate the new html markup I have made use of the fact it is easy for me to identify newly added pages. I have duplicated all the perl code used to generate pages and added css as a prefix to the routines.
I modded the css prefix routines to generate the new markup.
I use the old routines for the old pages and the new routines for new pages. Now that i'm happy with what the routines are producing I'm ready to complete the change over.

I worked out the layout using a minimal markup test page.
I find it useful to use two css files, one for positioning, one for remaining styles.

I agree with nightva attending to the box model and createErrorMsg re keeping the w3 css pages handy.

One thing that is vital to mention.
A big incentive to go all css was a desire to go up the search engine rankings.
Google pays attention to h1,h2, h3 etc markup and the order of this. Thus it is good idea to put index links after the content.

Julius

[edited by: SuzyUK at 3:24 pm (utc) on Oct. 21, 2004]
[edit reason] sorry no URLs : see TOS #13 [webmasterworld.com] [/edit]

encyclo

7:37 pm on Oct 17, 2004 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



The important thing to note, as others have done so already, is that accessibility!= table-free design. That's not to say you shouldn't get rid of the tables for layout if it makes your sites better, but it is not a reason in itself.

The best practical course of action is to do a thorough accessibility review of your existing site designs, and then you make some more informed decisions based on some hard practical evidence.

The keys to basic accessibility lie in clear navigation, avoidance on non-standard elements, flash or scripted events, and logical source-code order. On a table-based site, linearization is the keyword: what happens when you visit your existing site in a text browser such as Lynx? If the site contents make sense when the table is linearized, then you are a long way to being accessible already, even without doing away with the tables.

One concrete example: check out the website for the RNIB (Royal National Institute for the Blind). It uses - guess what! - tables for layout.

You can do great things with CSS positioning, and there are other factors in its favour including easier spidering, but before you jump to the conclusion that CSS-P is the only way, you need to make that evaluation based on your current site structure. Only then can you lay down the priorities.

SuzyUK

5:40 pm on Oct 21, 2004 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



yes.. accessibility does not necessarily mean a "table free" layout

Don't use layout tables at all in a transitional period.

this one I beg to differ on.. it may be much easier to concentrate on the rest of what CSS (e.g. Box Model) does while still using e.g. a simple 3 col table rather than trying to get to grips with complex layout techniques/workarounds first.

<div><h1>Header</h1></div>
<table>
<td>col one still containing CSS and divs</td>
<td>col two still containing CSS and divs</td>
<td>col three still containing CSS and divs</td>
</tr>
</table>
<div><p>footer</p></div>

Plus.. tables for layout are not perfect (IE?) either so learning what they will do and what CSS-P makes worse or better is a good tool too

Suzy

Robin_reala

9:04 pm on Oct 21, 2004 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Fair enough. I'm going the other way: having only learnt CSS positioning I'm having to work with some legacy tables based sites at my work now, and it's proving extremely hard to keep the tables-based loyout while implementing accessibility features. But maybe that's caused by my lack of expereince with tables? Certainly the markup's confusing as all hell - the complete lack of modularity compared to semantic HTML / CSS is really putting me off, and trying to combine CSS into the mix just makes things more complicated. I'm not suggesting dropping tables completely as a evangelical reaction, but purely as a simplification measure.