Cascading Style Sheets (CSS) is a stylesheet language used to describe the presentation of a document written in HTML or XML (including various XML languages like SVG or XHTML).
CSS is one of the core languages of the open web and has a standardized W3C specification. Developed in levels, CSS1 is now obsolete, CSS2.1 a recommendation and CSS3, now split into smaller modules, is progressing on the standard track. The first early drafts of CSS4 modules are being written.
An exhaustive reference for seasoned Web developers describing every property and concept of CSS.
A collection of demos showing the latest CSS technologies in action: a boost for the creativity.
Documentation about CSS
- CSS key concepts
- Describes the syntax of the language and introduces fundamentals like specificity and inheritance, the box model and margin collapsing, stacking and block-formatting contexts, or the initial, computed, used and actual values. Entities like CSS shorthand properties are also defined.
- Writing efficient CSS
- Explains how style sheet engines perform selector matching and describes rules for writing more efficient CSS.
- Using CSS transforms
- Presents the 2D operations that can be applied to each element in order to rotate, skew, translate it.
- Using CSS transitions
- Explains how to change the aspect of an element using a smooth animation between the initial and final state.
- Using CSS animations
- Using CSS gradients
- Explains how to define gradients, images composed of smooth variations of colors.
- Using CSS multi-column layouts
- Presents how to make multi-column page settings using the CSS Level 3 multi-column layout.
- Using CSS multiple backgrounds
- Describes how to define several backgrounds on the same element.
- Using CSS media queries
- Presents how to select style sheets based on details of the rendering device, like its viewport size, its resolution or if it has a touchscreen.
- Using CSS counters
- Explains how to use automatic counters and numbering, essentially used as list counters.
- Fonts and Typography
- Informs about managing your fonts using
and the WOFF font format.
- Using CSS flexible boxes
- Describes how to use flexible boxes to design layouts.
- Consistent List Indentation
- Trying to change the indentation of lists with CSS is trickier than it looks, but only because CSS-conformant browsers took different paths to default indentation. Find out how to get them all in line.
- Using dynamic styling information
- How to obtain information on and manipulate styling via the DOM
Getting help from the community
You need help on a CSS-related problem and can't find the solution in the documentation?
- Check the common CSS questions that give hints to solve common CSS problems.
- Consult the layout forum, which covers CSS and HTML:
Don't forget about the netiquette...
Tools easing CSS development
- Firefox' Firebug extension, a popular extension of that navigator that allows to edit live CSS on watched sites. Very practical to test some changes, though this extension does much more.
- Firefox' Web Developer extension also allows to watch and edit live CSS on watched sites. Simpler than Firebug, though less powerful.
- Firefox' EditCSS extension allows editing CSS in the sidebar.
- Open Web languages on which CSS is often applied: HTML, SVG, XHTML, XML.
- Mozilla technologies which make extensive use of CSS: XUL, Firefox and Thunderbird extensions and themes.