It looks like has just surfaced after a series of retags. While those edits seem fine, we already have a tag to cover CSS level 2; CSS2.1 is but merely CSS2 with a few (on the surface) subtle changes — the ".1" stands for "Revision 1".

Further, CSS2.1, with its changes, "is intended to replace CSS2" as the de jure CSS level 2. Vendors implementing CSS level 2 should refer to the CSS2.1 spec instead of CSS2. CSS3 itself is based on CSS2.1 as well.

From what I've seen, the only question that comes even close to differentiating the old CSS2 spec and the new CSS2.1 spec is:

Why does CSS2.1 define overflow values other than "visible" to establish a new block formatting context?

It comes close only because a potential answer that I'm still working on (yes, Yi Jiang, I've been busy) would mention the old spec as an essential factor, but even then that's not in the question.

Besides that, it seems and are generally used to mean the same thing, and most Web authors aren't interested in the differences/changes between the two anyway. Is there any real purpose in having both tags instead of consolidating them? And which tag should we use?

share|improve this question
Even though CSS is modularized starting from level 3, using level 2 as a base, I'm not a fan of merging [css], [css2] and [css2.1] together. I completely agree with casperOne's answer in… –  BoltClock's a Unicorn Aug 7 '12 at 19:30
Whenever I've seen CSS2 used as a term in the wild, it's always seemed to just be a typo meaning CSS2.1 –  Ben Brocka Aug 7 '12 at 19:46
I still think [css], [css2] and [css2.1] should be just merged. Only 83 questions are tagged either [css2] or [css2.1] and most of them don't actually need it. Over 99.9% of [css] questions do not include either tag, most likely because the distinction is not useful. If one of the tags must stay, I reckon merge [css2] into [css2.1]. –  thirtydot Aug 7 '12 at 23:09
@thirtydot: Perhaps you're right. There's a user adding [css2.1] tags to questions or replacing incorrect [css3] tags with [css2.1] where [css] would easily suffice. –  BoltClock's a Unicorn Oct 21 '12 at 8:59
Guys, please don't comment about CSS3. That is a completely different beast, and a much bigger headache to me than the existence of two separate [css2] and [css2.1] tags that I'm trying to focus on at the moment :/ –  BoltClock's a Unicorn Jan 7 '13 at 16:14
add comment

3 Answers

up vote 1 down vote accepted

OK, I took the liberty to handle this myself. In steps:

  1. Merged both and into to normalize all misuses of the version-specific tags (e.g. in questions where the general tag would suffice)

  2. Made a synonym of ( remains distinct from — I think the version is significant enough to keep around for questions specific to CSS2.1)

  3. Manually retagged questions specific to CSS2.1 with

can have its own tag for all I care: it's as much a buzzword as HTML5 is to HTML, so people are always going to use such a tag to refer to any feature that was introduced post-CSS2.1.

share|improve this answer
add comment

I agree with the first answer stating that and should be synonyms of , however, I would say that should remain separate until there is a . Because includes vendor-prefixed properties, is still changing, and is not fully supported across all major browsers, it's a more specific tag than .

share|improve this answer
This is where the use of numbers falls apart. There is actually no clear definition of CSS3, not enough to warrant a CSS4 (not to mention vendor prefixes have been part of the CSS2.1 grammar for a while). –  BoltClock's a Unicorn Jan 7 '13 at 16:15
Perhaps version numbers will be more clear, when (if) CSS3 gets finalized. Then there should be a working draft of CSS4. –  Mooseman Jan 7 '13 at 16:17
CSS4 is an editor's draft (or unofficial draft, depending on where you look on the W3C site) at this point. ( HTML5.1 is a working draft. ( –  Mooseman Jan 10 '13 at 13:57
add comment

Well, I would argue that both and (as well as ) should be synonymous with .

Since between CSS2(.1) and CSS3 there are

  • No major syntax differences.
  • No standing alone of either tag.
  • No need for separation.

It's the same language, the difference in between 2(.1) and 3 is merely an addition of features. There's no real change between the two, which justifies a different tag, in my opinion.

share|improve this answer
Are your bullet points comparing [css2] against [css2.1], or both collectively against [css]? It's not clear to me since you're proposing that both version-specific tags be combined with the general tag... –  BoltClock's a Unicorn Jan 7 '13 at 16:17
@BoltClock'saUnicorn: I'm suggesting all 3 version specific tags to be combined with the general css tag. Sorry if that wasn't clear. The difference between CSS2 and CSS3 isn't that great, the difference between CSS2 and CSS2.1 is practically nothing.. –  Second Rikudo Jan 7 '13 at 16:50
CSS3 is informally anything that isn't in the CSS2.1 base specification, which is... quite a heck of a lot. It is also a buzzword that probably isn't going to go away. Maybe I should propose that [html5] be merged into [html] as well in that case... but anyway, that's not related for now :) –  BoltClock's a Unicorn Jan 7 '13 at 16:57
And, oddly enough, from what I've seen CSS basically means CSS2. That is, anything that isn't CSS3. Which is funny because, as you mention, they're all the same language - just different levels. –  BoltClock's a Unicorn Jan 7 '13 at 17:02
@BoltClock'saUnicorn: Well, that's why I've put css3 in brackets, CSS2 and CSS2.1 should definitely be merged/synonymed with CSS, not 100% sure about CSS3. –  Second Rikudo Jan 7 '13 at 17:31
add comment

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .