CSS: All Properties from CSS 1 to CSS 3

Published on March 27, 2008 (↻ August 4, 2022), filed under (RSS feed for all categories).

What would HTML be without CSS? And what is an index of all HTML elements without an index of all CSS properties? To address the latter I present a continuously updated index of all properties specified in CSS 1, CSS 2, CSS 2.1, and CSS 3, including their initial values.

Head straight to the properties list, unless you’re interested in a few details:

Was this useful or interesting? Share (toot) this post, or maybe treat me to a coffee. Thanks!

About Me

Jens Oliver Meiert, on September 30, 2021.

I’m Jens, and I’m an engineering lead and author. I’ve worked as a technical lead for companies like Google and as an engineering manager for companies like Miro, I’m close to W3C and WHATWG, and I write and review books for O’Reilly and Frontend Dogma.

With my current move to Spain, I’m open to a new remote frontend leadership position. Feel free to review and refer my CV or LinkedIn profile.

I love trying things, not only in web development, but also in other areas like philosophy. Here on meiert.com I share some of my views and experiences.

Comments (Closed)

  1. On March 27, 2008, 12:38 CET, Tomasz Staniak said:

    Respect Jens; thanks for this, it’s good to have memory refresher in one place.

  2. On March 27, 2008, 13:11 CET, James Oppenheim said:

    Wow, a whole lot of work has gone into this. Nice work!

  3. On March 27, 2008, 13:26 CET, Rijk said:

    Some things are hard to include in such a list, for example various values for the ‘display’ property are currently defined in four CSS 3 modules. Another example is ‘float’. In my own list of CSS properties I’ve resorted to multiple inclusions of these properties.

  4. On March 27, 2008, 17:34 CET, Dave said:

    It seems useful, but I’m not sure how.

    Coming from the direction of the actual standards docs, CSS level 1 and CSS level 2 are both Recommendations. CSS 2.1 is still just a Candidate Recommendation…it’s recommended for implementation, but still not concrete. Unfortunately, it has to make changes to level 2 rather than just adding on. Developing for 2.1 is not technically stable, and level 2 will not be stable once 2.1 becomes a Recommendation.

    Much of Level 3 is still at working draft status, so that’s not really reasonable to develop for.

    It’s so ridiculous. The browsers claim support for various levels of CSS, but their implementations are partial. Beyond that, it’s somewhat irrelevant what level of CSS they claim to support because we can’t specify in our code what level we coded for. Lately, I get a feeling several times a week that web development is held together with string and chewing gum. The web won’t suddenly break, but it’s ridiculous that humanity can create elegant concepts like normalized relational databases and still we have to struggle through using the rat’s nest that is HTML+CSS+browsers.

  5. On March 28, 2008, 14:18 CET, Jens Oliver Meiert said:

    Tomasz, James, thank you—indeed, this took some time! 😊

    Rijk, you’re right, it wouldn’t only be a challenge but almost impossible to illustrate all values, combinations, dependencies, and so on, especially on screen… Thanks for sharing your properties list!

    Dave, yes, but there won’t be many changes to CSS 2.1 anymore, at least not around properties. Maintaining the CSS 3 properties will be demanding but also carry the true value of the index. As for targeting certain CSS versions, well, actually it’s fine this way but I understand your concerns… after all, it would be awesome to ever be able to work with everything out of CSS 2! 😉

    By the way, discussions on www-style came with suggestions that I’ll gladly address once I got an idea of the most important steps and the overall maintenance effort.

  6. On August 3, 2010, 9:29 CEST, Roshan kumar said:

    most of the cases css3 does not work properly so can i know about the reason because due to the this fault we can’t use for the client…

  7. On July 7, 2011, 6:04 CEST, David said:

    Wow, great resource, thank you!

    I’m not sure if you’re still updating this project, but I think it might be helpful if there was a way to filter by categories, uses, or some other way. Most people won’t look through the entire list, and if they already know the name, they’re probably looking for detials/tutorial about it. Well, that’s IMHO anyway. Thanks again, and well done!

  8. On February 21, 2012, 20:07 CET, Wingnut said:

    There’s lots of broken links on the click-thrus to the spec modules… in your css list. For example, none of the “font” properties click thru correctly, because somebody made a mistake over in http://www.w3.org/TR/css3-fonts/ where each anchor name requires -prop after it.

    Your list… http://www.w3.org/TR/css3-fonts/#font-style

    Actual anchor…

    Its a mistake in the spec document itself. All the anchors are mis-named.

    Also… maybe take a click through on the hyphenate-before. Its gone from http://www.w3.org/TR/css3-gcpm completely. Last time we saw it was in http://www.w3.org/TR/2010/WD-css3-gcpm-20100608/#hyphenate-before .

    Not sure if the click-thrus are important to you or not. I made my own list, derived from yours, over at http://webpages.charter.net/… and it has the very same problems that your list does. Do you have some SAY in the W3C CSS working groups and/or know Bert and his gang of upstarts? Could you get that fonts spec/module fixed for us both/all? That’d be great.

    Know how to find where hyphenation went? It looks like some work needs doing on MANY of the module docs. I just picked a couple of problems. There could be many. If you wander over to my list, take a look at the props with the question marks next to their names. Are they, or should they be… missing from your list? Anyone with info on these subjects… feel free to mail me at wingthing at charter dot net as wanted… thanks. Best wishes, everyone! Wingy

  9. On February 21, 2012, 20:12 CET, Jens Oliver Meiert said:

    Wingnut—I’ll have a look, thank you. While I prefer to link to the CSS 3 spec, respective modules are certainly most “volatile,” so these problems may occur.

  10. On April 9, 2012, 18:56 CEST, eags said:

    Probably more useful to list browser compatibility instead of which css version. I guess it depends on the purpose of this document. If it is for developer to know what their options are, it isn’t very useful as is.