3 Equalising Column Layout with Tables
Before you start - Yes I know, I know!!! I should use CSS to create this technique. However, let me just explain... :)
There is a site already in existence which I have been asked to create a new area / sub domain for. This must look exactly the same and I have been asked to use the same code in as many places as possible to retain consistency. However, the site has been made with only the slightest use of CSS - meaning that there are dozens of empty table cells and hundreds of spacer images.
Although I am yet to move across to full layout design using CSS, I do use css for all formatting (So I'm halfway there!!! ;)). I have basically recreated the site - still using tables, but have moved all the formatting over to an external stylesheet (so at least all those redundant empty cells and spacers have gone).
Right - now I've given you the background info, here's where the problem lies.
They have created a three column equalising layout which has been acheived (as far as I can tell) by removing the doctype declaration. Now, this leads me to question the problems that may arise from this (I understand that browsers will read it in quirks mode - but that's about it). What actual problems will this create?
Another question is (sorry for this) is it possible to have a 3 column equalising layout using tables and having a valid doctype? I've added the <!doctype HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> version which works - but again I think this will simply make the browser read the page in quirks mode?
I'm employing styles to acheive this (Body height=100%, Table height=100%, the 3 columns height=100%, etc), so is there a way this can be done?
P.s - Just to let you know that there is no footer. It's just the 3 columns that scroll down and need to end at the bottom of whichever column is the tallest. When using a valid doctype, I have managed to get the columns to be 100% high - but this creates an amount of space at the bottom of all the content :(.
Any help would be greatly appreciated.