CSS layouts are stop gap solutions
CSS expert Eric Meyer is releasing a series of articles providing feedback on CSS3 for the Web Standards Project. Every article is as you’d expect a good and insightful read. In the latest part of the series Meyer writes about the need of a layout system in CSS:
“How do we get those abilities in a form that implementors will, y’know, implement? I don’t know. I don’t care. We just need it, and have needed it for a good decade or so. Without it, CSS is a styling language but not a layout language. We’ve bent it into being something close to a layout language, which is nice but not really ideal.”
Unsurprisingly Meyer is right. We are using stop gap solutions for layout since the beginning of the web. Tables for layout — stop gap solution. CSS float — stop gap solution. CSS positioning — stop gap solution. CSS tables as well. All CSS solutions work great for certain tasks. Floats are a great concept, positioning and even CSS tables (beat me!). But they don’t fit together in a usable way. We are tinkering those bits and pieces together, struggling because it’s complicated as hell as those pieces where never developed for the use case of complex layouts. CSS layouts are the best solution out there, but they are far from perfect. We need a new approach to layout on the web. An easy to use solution with maximum flexibility has to be developed, inside or outside the W3C, inside or outside CSS, it doesn’t matter to me. We are waiting far, far too long for a good solution. And we don’t need it on a piece of paper or in the mind of some developer. We need it implemented across browsers as fast as possible and as good as possible. It can’t be more difficult then supporting all those half-arsed solutions that are out there.