CSS level 2 is a monolithic specification. You have a single specification divided into sections, with each section describing a basic component of the CSS formatting mode. CSS level 3 has been split into "modules". It contains the "old CSS specification" (which has been split into smaller pieces), and in addition, new modules are added.
Some of the most important CSS3 modules are:
- Selectors: Selectors are patterns that match against elements in a tree, and as such form one of several technologies that can be used to select nodes in an XML document. Selectors have been optimized for use with HTML and XML, and are designed to be usable in a performance-critical code.
- Box Model: This module describes the basic types of boxes, with their padding and margin, and the normal flow (i.e., the sequence of blocks of text with margins in-between). It also defines "floating" boxes, but also other kinds of layout, such as tables, absolute positioning, ruby annotations, grid layouts, columns and numbered pages are described by other modules. Also, the layout of text inside each line (including the handling of left-to-right and right-to-left scripts) is defined elsewhere. Boxes may contain either horizontal or vertical lines of text. Boxes of different orientations may be mixed in one flow. (This is a level 3 feature.)
- Backgrounds and Borders: This draft contains the features of CSS level 3 relating to borders and backgrounds. It includes and extends the functionality of CSS level 2 [CSS21], which builds on CSS level 1 [CSS1]. The main extensions compared to level 2 are borders consisting of images, boxes with multiple backgrounds, boxes with rounded corners and boxes with shadows. This module replaces two earlier drafts: CSS3 Backgrounds and CSS3 Border.
- Image Values and Replaced Content: This module contains the features of CSS level 3 relating to the <image> type and replaced elements. It includes and extends the functionality of CSS level 2 [CSS21], which builds on CSS level 1 [CSS1]. The main extensions compared to level 2 are the generalization of the <url> type to the <image> type, several additions to the '<image>' type, a generic sizing algorithm for images and other replaced content in CSS, and several properties controlling the interaction of replaced elements and CSS's layout models.
- Text Effects: This module contains the features of CSS relating to text decoration, such as underlines, text shadows, and emphasizes marks. CSS is a language for describing the rendering of structured documents (such as HTML and XML) on screen, on paper, in speech, etc.
- 2D/3D Transformations: This module allows the definition of transition effects between two property values by adding the CSS transition, transition-delay, transition-duration, transition-property, and transition-timing-function properties.
- Animations: This module allows the definition of animation effects by adding the CSS animation, animation-delay, animation-direction, animation-duration, animation-fill-mode, animation-iteration-count, animation-name, animation-play-state, and animation-timing-function properties, as well as the @keyframes at-rule.
- Multiple Column Layouts: This specification describes multi-column layouts in CSS, a style sheet language for the web. Using functionality described in the specification, content can be flowed into multiple columns with a gap and a rule between them.
- User Interface: This specification describes those user interface related selectors, properties and values that are proposed for CSS level 3 to style HTML and XML (including XHTML and Forms). It includes and extends user interface related features from the selectors, properties and values of CSS level 2 revision 1 and selectors specifications.