Cascading Style Sheets, level 2 revision 1
CSS 2.1 Specification
W3C Working Draft 28 January 2003
- This version:
-
http://www.w3.org/TR/2003/WD-CSS21-20030128
- Latest version:
-
http://www.w3.org/TR/CSS21
- Previous version:
-
http://www.w3.org/TR/2002/WD-CSS21-20020802
- Editors:
-
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.
Copyright © 2003 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability,
trademark,
document
use and software
licensing rules apply.
Abstract
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, spacing, and aural
cues) 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).
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 were implemented interoperably at the date of publication.
Status of this document
This document is produced by the CSS working group (part of
the Style Activity, see summary).
The CSS WG is aware that this draft does not yet address all the
comments raised on the previous draft. The next draft should follow in
a few weeks and is expected to be the final one.
The (archived)
public mailing list www-style@w3.org (see instructions) is preferred
for discussion of this and other drafts in the Style area. When
commenting on this draft, please put the text "CSS21" in the subject,
preferably like this: "[CSS21] <summary of comment>"
For this specification to exit the CR stage, the following
conditions shall be met:
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
the purposes of this criterion, we define the following terms:
- feature
-
An individual test case in the test suite.
- interoperable
-
passing the respective test case(s) in the CSS test suite, or,
if the implementation is not a web browser, an equivalent test.
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.
- implementation
-
a user agent which:
- implements the feature.
- is available (i.e. publicly downloadable or available
through some other public point of sale mechanism). This is the
"show me" requirement.
- is shipping (i.e. development, private or unofficial
versions are insufficient).
- is not experimental (i.e. is intended for a wide audience
and could be used on a daily basis.)
A minimum of sixth 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.
Features may/will be dropped if two or more interoperable
implementations are not found by the end of the CR period.
Features may/will also be dropped if adequate/sufficient (by
judgment of CSS WG) tests have not been produced for those
feature(s) by the end of the CR period.
This is a public W3C Working Draft for review by W3C Members and
other interested parties. It is a draft document and may be updated,
replaced, or obsoleted by other documents at any time. It is
inappropriate to use W3C Working Drafts as reference material or to
cite them as other than "work in progress."
Patent disclosures relevant to CSS may be found on the Working
Group's public patent disclosure
page.
A list of current W3C Recommendations and other technical documents
can be found at http://www.w3.org/TR.
- 1 About the CSS 2.1 Specification
- 2 Introduction to CSS 2.1
- 3 Conformance: Requirements and Recommendations
- 4 Syntax and basic data types
- 5 Selectors
- 6 Assigning property values, Cascading, and Inheritance
- 7 Media types
- 8 Box model
- 8.1 Box dimensions
- 8.2 Example of margins, padding, and borders
- 8.3 Margin properties: 'margin-top', 'margin-right', 'margin-bottom', 'margin-left', and 'margin'
- 8.4 Padding properties: 'padding-top', 'padding-right', 'padding-bottom', 'padding-left', and 'padding'
- 8.5 Border properties
- 8.5.1 Border width: 'border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width', and 'border-width'
- 8.5.2 Border color: 'border-top-color', 'border-right-color', 'border-bottom-color', 'border-left-color', and 'border-color'
- 8.5.3 Border style: 'border-top-style', 'border-right-style', 'border-bottom-style', 'border-left-style', and 'border-style'
- 8.5.4 Border shorthand properties: 'border-top', 'border-bottom', 'border-right', 'border-left', and 'border'
- 8.5.5 The border model for inline elements
- 9 Visual formatting model
- 10 Visual formatting model details
- 10.1 Definition of "containing block"
- 10.2 Content width: the 'width' property
- 10.3 Computing widths and margins
- 10.3.1 Inline, non-replaced elements
- 10.3.2 Inline, replaced elements
- 10.3.3 Block-level, non-replaced elements in normal flow
- 10.3.4 Block-level, replaced elements in normal flow
- 10.3.5 Floating, non-replaced elements
- 10.3.6 Floating, replaced elements
- 10.3.7 Absolutely positioned, non-replaced elements
- 10.3.8 Absolutely positioned, replaced elements
- 10.3.9 'Inline-block', non-replaced elements in normal flow
- 10.3.10 'Inline-block', replaced elements in normal flow
- 10.4 Minimum and maximum widths: 'min-width' and 'max-width'
- 10.5 Content height: the 'height' property
- 10.6 Computing heights and margins
- 10.7 Minimum and maximum heights: 'min-height' and 'max-height'
- 10.8 Line height calculations: the 'line-height' and 'vertical-align' properties
- 11 Visual effects
- 12 Generated content, automatic numbering, and lists
- 13 Paged media
- 14 Colors and Backgrounds
- 15 Fonts
- 16 Text
- 17 Tables
- 18 User interface
- Appendix A. Aural style sheets
- Appendix B. Bibliography
- Appendix C. Changes
- C.1 Additional property values
- C.2 Changes
- C.3 Errors
- C.3.1 Shorthand properties
- C.3.2 Section 4.1.1 (and G2)
- C.3.3 4.1.3 Characters and case
- C.3.4 Section 4.3 (Double sign problem)
- C.3.5 Section 4.3.2 Lengths
- C.3.6 Section 4.3.6
- C.3.7 5.10 Pseudo-elements and pseudo-classes
- C.3.8 8.2 Example of margins, padding, and borders
- C.3.9 Section 8.5.2 Border color: 'border-top-color', 'border-right-color', 'border-bottom-color', 'border-left-color', and 'border-color'
- C.3.10 Section 8.4 Padding properties
- C.3.11 8.5.3 Border style
- C.3.12 Section 8.5.4 Border shorthand properties: 'border-top', 'border-bottom', 'border-right', 'border-left', and 'border'
- C.3.13 8.5.4 Border shorthand properties: 'border-top', 'border-bottom', 'border-right', 'border-left', and 'border'
- C.3.14 Section 9.3.1
- C.3.15 Section 9.3.2
- C.3.16 Section 9.4.3
- C.3.17 Section 9.7 Relationships between 'display', 'position', and 'float'
- C.3.18 Section 10.3.2 Inline, replaced elements (and 10.3.4, 10.3.6, and 10.3.8)
- C.3.19 Section 10.3.3
- C.3.20 Section 10.6.2 Inline, replaced elements ... (and 10.6.5)
- C.3.21 Section 10.6.3
- C.3.22 Section 11.1.1
- C.3.23 11.2 Visibility: the 'visibility' property
- C.3.24 12.6.2 Lists
- C.3.25 Section 15.2.6
- C.3.26 Section 15.5
- C.3.27 Section 16.6 Whitespace: the 'white-space' property
- C.3.28 Section 17.2 The CSS table model
- C.3.29 17.2.1 Anonymous table objects
- C.3.30 17.5 Visual layout of table contents
- C.3.31 17.5 Visual layout of table contents
- C.3.32 Section 17.5.1 Table layers and transparency
- C.3.33 Section 17.6.1 The separated borders model
- C.3.34 Appendix D.2 Lexical scanner
- C.4 Clarifications
- Appendix D. A sample style sheet for HTML 4.0
- Appendix E. Property index
- Appendix F. Index
- Appendix G. Grammar of CSS 2.1