I believe the first thing that needs to be addressed is what CSS2.1 is and what happened to CSS2! CSS2.1 one is the upgraded and “corrected” version of CSS2. CSS2 was implemented as a recommendation in 1998. But errors in CSS2 have been corrected via the publication of various errata. According to the article online changes there has not yet been an opportunity for the specification to be changed based on experience gained. Not entirely sure what they mean by experience gained! But these issues are been addressed with the upcoming CSS3 specifications. This somehow interferes with the implementation and interoperability with CSS2. The CSS2.1 attempts to address this problem by a number of ways:
1.) Maintaining compatibility with those portions of CSS2 that are widely accepted and implemented.
2.) Incorporating all published CSS2 errata.
3.) Where implementations overwhelmingly differ from the CSS2 specification, modifying the specification to be in accordance with generally accepted practice.
4.) Removing CSS2 features which, by virtue of not having been implemented, have been rejected by the CSS community. CSS 2.1 aims to reflect what CSS features are reasonably widely implemented for HTML and XML languages in general (rather than only for a particular XML language, or only for HTML).
5.) Removing CSS2 features that will be obsoleted by CSS3, thus encouraging adoption of the proposed CSS3 features in their place.
6.) Adding a (very) small number of new property values, when implementation experience has shown that they are needed for implementing CSS2.
