Then we all got jobs, or clients, and for most people their reference point for design was print. As we were handed Photoshop comps that couldn’t be built with the tools we had we responded with our new mantra, “the web is not print”.
- More than 216 colours? The web is not print!
- A choice of fonts? The web is not print!
- Equal height columns? The web is not print!
- Centre that box? The web is not print!
We got good at building our not-print web. This is how it is. These are the limitations. The web is not print. We rolled our eyes at the print designers, “they just don’t understand the web!”
On occasion I’d try really hard to implement these print-like ideas. Many other people did too – it’s why we fragmented designs into tiny pieces to reconstruct with tables. It’s why we ended up with things like sIFR. Horrible hacks, but as a community we were pushing at the edges of what was possible. Demonstrating what we wanted in code that made the best of what we had available. While I muttered under my breath about the web not being print, some of my most enjoyable front-end coding challenges came from trying to implement those designs.
I feel as if something changed as the web became the core of business operations. It manifested in the creation of boilerplates, themes, frameworks. It became unfashionable to start designs in Photoshop, instead designs originated in a web browser, and so were designed with the limitations of that medium front and centre. They became easier and quicker to build, I might have to rebuild in production code the HTML and CSS prototype but the decisions were about methods – there was never the possibility that I might be trying to build something impossible.
Somehow the tables have turned. As the web moves on, as we get CSS that gives us the ability to implement designs impossible a few years ago, the web looks more and more like something we could have built with rudimentary CSS for layout. We’ve settled on our constraints and we are staying there, defined by not being print. Or defined by the constraints of layout methods designed for far simpler times.
When I started demonstrating CSS Shapes, Regions and Exclusions at conferences I would get people in the Q&A or coming up to me afterwards very worried (and sometimes furious) about these print-like things appearing in a browser. The web is not print, they would say. I never got a reply as to why print influence was a problem, it was as if print sneaking into their web platform was undermining some core truth.
No, the web is not print. However it shouldn’t be defined by being not print. Nor should we allow assumptions about what is and isn’t possible stop us experimenting. Unless we find the edges, unless we ask why we can’t do things, unless we come up with ways to try and make it work, the native tools won’t get better.
It’s for this reason that I love the work that Jen Simmons does, digging into the design possibilities new CSS brings and getting people excited about that. It’s also why I love the idea behind Houdini, that effort to open up the mysterious bits of CSS and provide sensible APIs. I love the excitement I see from audiences when I show them things like CSS Grid Layout. I hope we’ll see interesting possibilities take shape in code, as people realise they can code their way past the limitations of the existing platform.
The web has come a long way in those 20 years and I’ve been privileged to come along for the ride. I can’t wait to see, and to be part of what comes next.