Tables, nested tables, tables to the centre of the Earth, website interface design before CSS
8 July 2025
United Kingdom based web frontend architect Den Odell:
HTML tables gave us something no other element did at the time: control. You could create rows and columns. You could define cell widths and heights. You could nest tables inside tables to carve up the page into zones. That control was intoxicating. It wasn’t elegant. It definitely wasn’t semantic. But it worked.
It worked, but you could spend hours, days even, building a table structure, then slicing up an interface mockup, so the often numerous components would fit together perfectly.
The process was tedious, to say the least. It required placing sometimes minuscule images, both GIFs and JPEGs — being two of the main web image compression formats of the time — side by side, depending on the best optimisation method for each part of the interface.
See here an image of a page constructed thusly from disassociated circa 2001, when this was more website, and less blog. It felt wrong working this way — both on personal and commercial projects — but in the early years of the twenty-first century browser support for CSS was woeful.
Eventually, reasonable support for CSS arrived, but then the next challenge emerged: encouraging tables-layout-accustomed web designers to work with CSS for layout instead of HTML. But that’s a story for another day.
RELATED CONTENT