Re: [csswg-drafts] Let’s Define CSS 4 (#4770)

I was a fan of modularization when it started after CSS 2.0. However, not everyone had the same idea how it would or should work. In my opinion, we should have had started with splitting the existing spec into parts without adding anything new, but in reality, almost _twenty_ years later, some modules and some external specs still need to reference CSS2. Another effect was that it took like a decade for the WG to agree that modules that build upon Level 2 would start at Level 3, whereas completely new modules would start at Level 1, despite “CSS3” being the popular term. Some modules are at Level 5 now (or soon). That is why I believe that “CSS4” in particular would not be a good marketing term.

We originally had some Profiles of CSS (e. g. for handhelds, TVs and printers) that bundled certain modules and, unfortunately, also picked single features out of other modules, which together would need to be supported to claim conformance. It was thought okay to not support entire modules if it did not make sense on the platform or for the vendor – nowadays we are closer to a monolithic ubiquitous and open “libcss” that tries to support everything than we ever were, despite some forks and a good, mature and also open alternative. 

Today, all we have are supposedly annual snapshots released by the CSSWG _for implementors_ and external sites documenting real-world support by custom criteria. Common, reliable test suites for objectively determining conformance are still regarded of secondary importance by many.

I did consider to suggest a numbering system for “CSS” that significantly differed from classic Levels, which individual modules shall continue to use, and did not imply annual updates which – letʼs be honest – the WG will never finish in time anyway. The system I preferred was loosely based on browser version numbers: CSS *n* would be (roughly) what could be assumed to work sufficiently well in all of Edge/Chrome version greater than 10×(*n*+1) and Firefox in greater than 10×*n*. The current state would therefore be between CSS6 and CSS7. Thatʼs too unintuitive and unreliable, though.

What I do suggest are entirely new terms for bundles/profiles/sets of (ideally only full) modules, versioning independently of CSS module levels:

- **Web Color**
- **Web Typography**
- **Web Layout**
- **Web Media**
- **Web Graphics**
- **Web Animation**

These wollte also include (parts of) other specs like HTML, SVG, JS. 

-- 
GitHub Notification of comment by Crissov
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/4770#issuecomment-585577227 using your GitHub account

Received on Thursday, 13 February 2020 06:44:39 UTC