So CSS4 is going to happen?
December 9, 2023
On Friday, I watched a video by Zoran Jambor of CSS Weekly. The video is entitled CSS4 is Coming, (Not Clickbait). The video caught my eye a couple of weeks ago when I skimmed through the CSS Weekly newsletter but I did not have a chance to watch it at the time. Kevin Powell had also mentioned it recently in his newsletter so I decided to watch. I was interested because I remember being told years ago that CSS4 was not going to happen.
In the past, CSS was released under levels, like 1 or 2. However, after Level 2, the CSS Working Group chose to adopt a modular approach instead of a single multi-chapter document. Each module defined a different part of CSS. This allowed for the specification to be broken into more manageable chunks and allowed for more immediate and incremental improvement to CSS. The benefit for developers is that we did not have to wait as long for new CSS features to be implemented. 1
CSS3 was more a marketing term and an umbrella for a bunch of new CSS features that came out starting in 2009. CSS3 created a lot of buzz and excitement in the development community. I was excited about drop-shadow, RGBA (which gave us transparency levels for color), and border-radius, which were all early features of CSS3. Having an umbrella term made it much easier for authors to refer to these features in articles and books. It also provided a baseline for developers to measure their skills.
The problem arose around 2013 when more and more features were being released, usually one at a time and over several years. Flexbox, custom properties, and grid layout are examples. And that just covers till 2018. Over the past three or four years, the number of new features has exploded. It has been an exciting time for CSS development.
As these features have increased, it has been more and more difficult to benchmark and refer to these features as a group. Many authors have used the term ‘modern CSS,’ but that term quickly becomes outdated as each year goes by.
As Zoran explains in the video, in early 2020, many thought leaders in the industry revived this idea of coming up with labels or benchmarks to group CSS features as a common source of reference. 2 The idea lost a bit of steam during the pandemic, mainly due to Jen Simmons, who was the prime mover, getting very sick with COVID-19. But it was recently picked up again by Una Kavets 3, who is now leading the CSS4 Community Group, which Jen had originally formed before getting ill.
CSS4 would purely be a marketing term and not a CSS level of the specification. It would allow a shared language and understanding among developers and make it easier for authors to refer to these features. And it will help other developers to evaluate their skills and see where they will want to level up.
There was some excitement when major things like Flexbox, Grid, and container queries were released, but not at the level that surrounded CSS3. The hope is that creating these labels/references will generate more enthusiasm in the developer community at a similar level that CSS3 did in the past.
From what Zoran described, it looks like the CSS4 Community group is looking three-year timespan period to place different features into different buckets.
CSS4 would include features from around 2013 to 2018 and are described as “essential features that were not part of CSS3 but are already a fundamental part of CSS.” CSS5 would cover features from 2019 through 2024. “Newer features whose adoption is steadily growing. You can view these classifications as a work in progress.
I think this will be a good thing for the developer community. I know I have struggled over the past three years to know how to label or refer to all these new features. I think I have used the term ‘modern CSS’ on more than one occasion. I think a three-year time period seems like a reasonable timeframe to group features.
I think this will be a huge benefit to the community. It will help designers and developers to be able to identify what is most important to learn next. I believe it will generate more enthusiasm and excitement about the incredible new features and tools that are added to CSS. It will assist authors to be able to refer to these features under these marketing terms.
I look forward to seeing how this progresses.
Footnotes
1 CSS Snapshot 2023, intro, W3C
2 Let’s Define CSS4, GitHub issue in CSS Working Group, a comment made on February 12, 2020, by Jen Simmons.
3 Let’s Define CSS4, GitHub issue in CSS Working Group, a comment made on October 14, 2022, by Jen Simmons.
This post is part of my attempt to post something every day for a month. I was inspired by Michelle Barker, who recently participated in National Blog Posting Month.