CSS at 30: A Look Back at the Design Decisions We Can’t Undo

Every front-end developer has come across a CSS property and paused. Why does z-index only apply to certain elements? And why does animating to auto require a property like interpolate-size in the first place?

The answer lies in history. CSS debuted in 1996, a time when styling a document was its primary concern—no one could foresee the application-like interfaces it would be expected to drive decades later. What made sense as a default for static content often feels like a limitation today.

Interestingly, the CSS Working Group is far from defensive about these historical choices. The specifications themselves contain candid admissions of regret. In CSS Values and Units Module Level 5, there’s a telling note about interpolate-size:

NOTE: If we had a time machine, this property wouldn’t need to exist.

That same honesty applies to other early defaults. The initial value of background-repeat, for instance, is acknowledged by the Group as a “reasonable default for the 90s,” even if it would be more helpful today if it defaulted to no-repeat.

Why We Can’t Simply Fix What’s Broken

The obvious question is: why not just correct these issues? The answer is a familiar one in engineering—technical debt. Countless existing websites have been built on top of these behaviors, and altering them now would break far more than it would fix. Once CSS ships a feature, it’s effectively permanent.

This constraint makes new design discussions more complicated. The upcoming CSS Masonry layout specifications, for example, have reopened the debate over whether Flexbox and Grid should share more syntax to accommodate them. It’s a question of how to evolve without fracturing existing implementations.

Designing Under Immutable Constraints

Given those stakes, the CSS Working Group’s job deserves serious appreciation. Designing a spec that will be frozen the moment it’s adopted is science, guesswork, and pressure rolled into one. There’s no room for ambiguity about what will be harmful to change later. The Group regularly publishes an ongoing list of its own acknowledged mistakes, a level of transparency that will serve as a reference and, hopefully, a cautionary tale for future iterations.