Join James Williamson for an in-depth discussion in this video The current state of CSS, part of CSS Fundamentals.
- [Voiceover] Okay, so now that we know a little bit more about about the history of CSS, let's take a look at what's going on with it currently. Please keep in mind that the changing nature of CSS means that what I'm about to show you here is likely to have changed significantly since I recorded this movie. So, a better way to look at what I'm about to show you is, it's more of a guide to finding out what's going on with CSS rather than a snapshot of its current state. To get a high-level overview of what's going on with CSS visit the W3C's cascading style sheets current work page and how to participate.
Here, you're going to find a complete list of all the CSS modules. Their current state, their priority, and a timeline for when the module could reach recommendation status. So, let's take a closer look at this page. Now, the first thing you're going to notice is that we have a list of modules and specifications that are split into groups. You'll notice we have Completed, Stable, Testing, Refining, and so forth. Now, these are ordered from most to least stable. Listed beside the modules themselves are their current status and then any upcoming revisions.
If the documents are live on the W3C site, you can simply click the status for the latest version of that CSS specification. Now, you might have also noticed that out to the very far right here we have a little information icon. Clicking on that icon's going to take you to a brief description of that and then out to the right you'll see any current tests for that specification. You'll find a little history snapshot of the specification which will tell you how long the specification's been around and at what point it reached certain recommendation statuses.
Now, to help make sense of those module status, it helps if you know the steps the document goes through on its way to a recommendation. So, I'm going to go back to the document and then, if I scroll all the way down here towards the bottom, I've got a nice little key down here that explains the different colors and status codes of the spec. So, these documents are first published as a public Working Draft. Now, this is the stage where most of the collaborative work behind the standards is done. As the Working Draft stage comes to a close, the standard is going to go into what it's known as, "Last Call".
Last Call is, essentially, a way of letting people know that the standard is about to move to the next stage of testing. So, any reviews, edits, or additional implementations need to be done before the proposed deadline. After Last Call, the standard moves on to Candidate Recommendation. Although the standard is considered stable at this point, implementations are studied, and changes can be made at this stage if they're required. From there, specifications move onto the Proposed Recommendation and publish recommendation statuses.
Using those as a guide, it's actually pretty easy to see as we scroll through here which modules are stable and which ones still might see significant changes prior to publication. I also want to make sure that you don't confuse a specification status with the current state of its implementation. Certainly, keeping track of these CSS modules and their timelines, will give you a better idea of which modules to focus on as you learn CSS versus the ones that you can maybe put off for the near future. However, many of the features that are currently in working draft status are actually further along in terms of being implemented by browsers than some of those that are in Candidate Recommendations.
The bottom line is that you need to keep your eye on both what's going on with the specification and how browsers are implementing them. We'll discuss how to track browser implementation a little bit later on after we're through taking a closer look at reading through the CSS specifications.
CSS Fundamentals covers the basic concepts, terminology, and techniques you need to read and write CSS. It's for people who want a big-picture overview before taking hands-on courses. Author James Williamson explains how CSS affects text, borders, backgrounds, and images; how CSS works with HTML; and how the W3C's evolving CSS specification impacts designers. He also reviews some of the most popular CSS editors and frameworks and lists online tools and resources for further study.
- What is CSS?
- Basic selector types
- Using CSS with HTML
- How browsers render CSS differently
- Exploring CSS specifications
- Checking browser support
- Working with fonts
- Understanding the box model
- Adjusting margins and padding
- Positioning elements
- Basic CSS layout concepts
- Media types and media queries
- Working with CSS frameworks and CSS grids