Cascading Style Sheets, level 2 revision 1
CSS 2.1 Specification

W3C Working Draft 15 September 2003Candidate Recommendation 25 February 2004

This version:
Latest version:
Previous version:
Bert Bos <bert @w3.org>
Tantek Çelik <tantekc @microsoft.com>
Ian Hickson <ian @hixie.ch>
Håkon Wium Lie <howcome @opera.com>

This document is also available in these non-normative formats: plain text, gzip'ed tar file, zip file, gzip'ed PostScript, PDF. See also translations.


This specification defines Cascading Style Sheets, level 2 revision 1 (CSS 2.1). CSS 2.1 is a style sheet language that allows authors and users to attach style (e.g., fonts and spacing) to structured documents (e.g., HTML documents and XML applications). By separating the presentation style of documents from the content of documents, CSS 2.1 simplifies Web authoring and site maintenance.

CSS 2.1 builds on CSS2 [CSS2] which builds on CSS1 [CSS1]. It supports media-specific style sheets so that authors may tailor the presentation of their documents to visual browsers, aural devices, printers, braille devices, handheld devices, etc. It also supports content positioning, table layout, features for internationalization and some properties related to user interface.

CSS 2.1 corrects a few errors in CSS2 (the most important being a new definition of the height/width of absolutely positioned elements, more influence for HTML's "style" attribute and a new calculation of the 'clip' property), and adds a few highly requested features which have already been widely implemented. But most of all CSS 2.1 represents a "snapshot" of CSS usage: it consists of all CSS features that are implemented interoperably at the date of publication of the Recommendation.

Status of this document

This is a W3C Last Call Working Draft . "Last call" means thatsection describes the working group believes thatstatus of this specification is readydocument at the time of its publication. Other documents may supersede it. A list of current W3C publications and therefore wishesthe latest revision of this totechnical report can be found in the last call for comments. If the feedbackW3C technical reports index at http://www.w3.org/TR/.

This is positive,a W3C Candidate Recommendation, which means the working group plans to submitspecification has been widely reviewed and W3C recommends that it for considerationbe implemented. It will remain Candidate Recommendation at least until 1 September 2004.

Publication as a W3CCandidate Recommendation . Comments can be sent until 10 October 2003. This document is produceddoes not imply endorsement by the CSS working group (part ofW3C Membership. It is inappropriate to cite this document as other than work in progress.

A test suite and a report on implementations will be provided before the Style Activity , see summary ).document becomes a Proposed Recommendation.

The (archived) public mailing list www-style@w3.org (see instructions) is preferred for discussion of this and other draftsspecifications in the Style area. When commenting on this draft,document, please put the text "CSS21" in the subject, preferably like this: "[CSS21] <summary of comment>"

This section describes the status of thisdocument atis produced by the time of its publication. Other documents may supersede this document. A listCSS working group (part of current W3C publications andthe latest revision of this technical report canStyle Activity, see summary).

Patent disclosures relevant to CSS may be found inon the W3C technical reports index at http://www.w3.org/TR/. It is inappropriate to use W3CWorking Drafts as reference material or to cite them as other than "work in progress."Group's public patent disclosure page.

Candidate Recommendation Exit Criteria

For this specification to exit the CR stage, the following conditions shallmust be met:

  1. There must be at least two interoperable implementations implementing 'all' the features. An implementation can implement a superset of the features and claim conformance to the profile.for every feature. For the purposes of this criterion, we define the following terms:


    An individual test case inA section or subsection of the test suite.specification.


    passing the respective test case(s)cases in the CSStest suite, or, if the implementation is not a web browser, anequivalent test.tests. Every relevant test in the test suite should have an equivalent test created if such a UA is to be used to claim interoperability. In addition if such a UA is to be used to claim interoperability, then there must one or more additional UAs which can also pass those equivalent tests in the same way for the purpose of interoperability. The equivalent tests must be made publicly available for the purposes of peer review.


    a user agent which:

    1. implements the feature.
    2. is available (i.e. publicly downloadable or available through some other public point of sale mechanism). This is the "show me" requirement.
    3. is shipping (i.e. development, private or unofficial versions are insufficient).
    4. is not experimental (i.e. is intended for a wide audience and could be used on a daily basis.)basis).
  2. A minimum of sixthsix months of the CR period must have elapsed. This is to ensure that enough time is given for any remaining major errors to be caught.

  3. The CR period will be extended if implementations are slow to appear.

  4. Features may/willthat were not in CSS1 will be dropped (thus reducing the list of "all" features mentioned above) if two or more interoperable implementations of those features are not found by the end of the CR period.

  5. Features may/willwill also be dropped if adequate/sufficientsufficient and adequate tests (by judgment of CSS WG) teststhe working group) have not been produced for those feature(s)features by the end of the CR period.

Patent disclosures relevant to CSS may be found on the Working Group's public patent disclosure page.Quick Table of Contents

Full Table of Contents