-
Notifications
You must be signed in to change notification settings - Fork 708
/
Copy pathOverview.html
373 lines (297 loc) · 17.1 KB
/
Overview.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang=en>
<head>
<title>Cascading Style Sheets (CSS) Snapshot 2007</title>
<!-- <link rel="stylesheet" type="text/css" href="default.css"> -->
<link href="http://www.w3.org/StyleSheets/TR/W3C-CR.css" rel=stylesheet
type="text/css">
<body>
<div class=head> <!--begin-logo-->
<p><a href="http://www.w3.org/"><img alt=W3C height=48
src="http://www.w3.org/Icons/w3c_home" width=72></a> <!--end-logo-->
<h1>Cascading Style Sheets (CSS) Snapshot 2007</h1>
<h2 class="no-num no-toc" id=longstatus-date>W3C Candidate Recommendation
15 November 2010</h2>
<dl>
<dt>This version:
<dd><a
href="http://www.w3.org/TR/2010/CR-css-beijing-20101115/">http://www.w3.org/TR/2010/CR-css-beijing-20101115/</a>
<dt>Latest version:
<dd><a
href="http://www.w3.org/TR/css-beijing/">http://www.w3.org/TR/css-beijing/</a>
<dt>Previous version:
<dd><a
href="http://www.w3.org/TR/2010/WD-css-beijing-20100727/">http://www.w3.org/TR/2010/WD-css-beijing-20100727/</a>
<dt>Editor:
<dd><a href="http://fantasai.inkedblade.net/contact">Elika J. Etemad</a>
</dl>
<!--begin-copyright-->
<p class=copyright><a
href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright"
rel=license>Copyright</a> © 2010 <a
href="http://www.w3.org/"><acronym title="World Wide Web
Consortium">W3C</acronym></a><sup>®</sup> (<a
href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute
of Technology">MIT</acronym></a>, <a href="http://www.ercim.eu/"><acronym
title="European Research Consortium for Informatics and
Mathematics">ERCIM</acronym></a>, <a
href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C <a
href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
<a
href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>
and <a
href="http://www.w3.org/Consortium/Legal/copyright-documents">document
use</a> rules apply.</p>
<!--end-copyright-->
<hr title="Separator for header">
</div>
<h2 class="no-num no-toc" id=abstract>Abstract</h2>
<p>This document collects together into one definition all the specs that
together form the current state of Cascading Style Sheets (CSS) as of
2007. The primary audience is CSS implementors, not CSS authors, as this
definition includes modules by specification stability, not Web browser
adoption rate.
<h2 class="no-num no-toc" id=status>Status of this document</h2>
<!--begin-status-->
<p><em>This section describes the status of this document at the time of
its publication. Other documents may supersede this document. A list of
current W3C publications and the latest revision of this technical report
can be found in the <a href="http://www.w3.org/TR/">W3C technical reports
index at http://www.w3.org/TR/.</a></em>
<p>This document was produced by the <a
href="http://www.w3.org/Style/CSS/members">CSS Working Group</a> as a <a
href="http://www.w3.org/Consortium/Process/tr#RecsCR">Candidate
Recommendation.</a>
<p>A Candidate Recommendation is a document that has been widely reviewed
and is ready for implementation. W3C encourages everybody to implement
this specification and return comments to the (<a
href="http://lists.w3.org/Archives/Public/www-style/">archived</a>) public
mailing list <a
href="mailto:www-style@w3.org?Subject=%5Bcss-beijing%5D%20PUT%20SUBJECT%20HERE">
www-style@w3.org</a> (see <a
href="http://www.w3.org/Mail/Request">instructions</a>). When sending
e-mail, please put the text “css-beijing” in the subject,
preferably like this: “[<!---->css-beijing<!---->]
<em>…summary of comment…</em>”
<p>Publication as a Candidate Recommendation does not imply endorsement by
the W3C Membership. This is a draft document and may be updated, replaced
or obsoleted by other documents at any time. It is inappropriate to cite
this document as other than work in progress.
<p>This document was produced by a group operating under the <a
href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February
2004 W3C Patent Policy</a>. W3C maintains a <a
href="http://www.w3.org/2004/01/pp-impl/32061/status"
rel=disclosure>public list of any patent disclosures</a> made in
connection with the deliverables of the group; that page also includes
instructions for disclosing a patent. An individual who has actual
knowledge of a patent which the individual believes contains <a
href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">
Essential Claim(s)</a> must disclose the information in accordance with <a
href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">
section 6 of the W3C Patent Policy</a>.</p>
<!--end-status-->
<p>For this specification to exit the Candidate Recommendation stage, all
of the specifications linked from the <a href="#css">Cascading Style
Sheets Definition</a> must be in the Proposed Recommendation or
Recommendation status. The minimum CR period to allow time for comment is
six weeks.
<h2 class="no-num no-toc" id=contents>Table of contents</h2>
<!--begin-toc-->
<ul class=toc>
<li><a href="#intro"><span class=secno>1. </span>Introduction</a>
<ul class=toc>
<li><a href="#w3c-process"><span class=secno>1.1. </span>The W3C Process
and CSS</a>
</ul>
<li><a href="#css-levels"><span class=secno>2. </span>CSS Levels</a>
<ul class=toc>
<li><a href="#css1"><span class=secno>2.1. </span>CSS Level 1</a>
<li><a href="#css2"><span class=secno>2.2. </span>CSS Level 2</a>
<li><a href="#css3"><span class=secno>2.3. </span>CSS Level 3</a>
</ul>
<li><a href="#css"><span class=secno>3. </span>Cascading Style Sheets
Definition</a>
<ul class=toc>
<li><a href="#partial"><span class=secno>3.1. </span>Partial
Implementations</a>
<li><a href="#profiles"><span class=secno>3.2. </span>CSS Profiles</a>
<li><a href="#experimental"><span class=secno>3.3. </span>Experimental
Implementations</a>
</ul>
</ul>
<!--end-toc-->
<h2 id=intro><span class=secno>1. </span>Introduction</h2>
<p>When the first CSS specification was published, all of CSS was contained
in one document that defined CSS Level 1. CSS Level 2 was defined also by
a single, multi-chapter document. However for CSS beyond Level 2, the CSS
Working Group chose to adopt a modular approach, where each module defines
a part of CSS, rather than to define a single monolithic specification.
This breaks the specification into more manageable chunks and allows more
immediate, incremental improvement to CSS.
<p>Since different CSS modules are at different levels of stability, the
CSS Working Group has chosen to publish this profile to define the current
scope and state of Cascading Style Sheets as of late 2007. This profile
includes only specifications that we consider stable <em>and</em> for
which we have enough implementation experience that we are sure of that
stability.
<p>Note that this is not intended to be a CSS Desktop Browser Profile:
inclusion in this profile is based on feature stability only and not on
expected use or Web browser adoption. This profile defines CSS in its most
complete form.
<p>Note also that although we don't anticipate significant changes to the
specifications that form this snapshot, their inclusion does are not mean
they are frozen. The Working Group will continue to address problems as
they are found in these specs. Implementers should monitor <a
href="http://lists.w3.org/Archives/Public/www-style/">www-style</a> and/or
the <a href="http://www.w3.org/blog/CSS">CSS Working Group Blog</a> for
any resulting changes, corrections, or clarifications.
<h3 id=w3c-process><span class=secno>1.1. </span>The W3C Process and CSS</h3>
<p><em>This section is non-normative.</em>
<p>In the <a href="http://www.w3.org/2005/10/Process-20051014/">W3C
Process</a>, a Recommendation-track document passes through five levels of
stability, summarized below:
<dl style="list-style-type: decimal">
<dt>Working Draft (WD)
<dd>Published during the process of drafting the specification, the
purpose of a public Working Draft is to create a snapshot of the
specification's current state and to solicit input from the W3C and the
public. The document is known to be unstable, and is often incomplete.
<dt>Last Call Working Draft (LC or LCWD)
<dd>By publishing a Last Call Working Draft, a working group is expressing
that they consider the spec to be complete and all issues to be resolved.
Publishing a Last Call Working Draft announces that this specification
will move toward Candidate Recommendation unless significant issues are
brought up. The Last Call period is a last chance for others to submit
issues before the transition to CR.
<dt>Candidate Recommendation (CR)
<dd>By publishing a Candidate Recommendation, a working group is
expressing that have resolved all known issues and they believe the spec
is ready for implementation.
<dt>Proposed Recommendation (PR)
<dd>To exit CR and enter this stage, the spec needs a comprehensive test
suite and implementation reports proving that every feature in the spec
is interoperably implemented in at least two shipping implementations.
Entering the Proposed Recommendation stage signals to the W3C that these
requirements have been met. Once the W3C officially approves the
specification, it becomes a Recommendation.
<dt>Recommendation (REC)
<dd>This is the final stage. At this point there should need to be no more
changes.
</dl>
<p>In the CSSWG's experience, the recommendation track is not linear. The
wider review triggered by an LCWD often results in at least another
working draft, possibly several. More significantly, our experience is
that many specs enter CR twice, because implementation testing often
uncovers significant problems in the spec and thus pushes it back to
working draft. Additionally, fixing even minor problems forces a CR to
re-enter the Working Draft stage. As a result, although the CSSWG has a
clear idea of the stability of the CSS specs, it is very difficult for
someone outside the working group to come to that same understanding based
on a specification's official status. The CSS Working Group's motivation
for creating this document is thus to communicate to others our
understanding of the state of CSS.
<h2 id=css-levels><span class=secno>2. </span>CSS Levels</h2>
<p>Cascading Style Sheets does not have versions in the traditional sense;
instead it has <dfn id=levels>levels</dfn>. Each level of CSS builds on
the previous, refining definitions and adding features. The feature set of
each higher level is a superset of any lower level, and the behavior
allowed for a given feature in a higher level is a subset of that allowed
in the lower levels. A user agent conforming to a higher level of CSS is
thus also conformant to all lower levels.
<h3 id=css1><span class=secno>2.1. </span>CSS Level 1</h3>
<p>The CSS Working Group considers the <a
href="http://www.w3.org/TR/2008/REC-CSS1-20080411/">CSS1 specification</a>
to be obsolete. <dfn id=css-level-1>CSS Level 1</dfn> is defined as all
the features defined in the CSS1 specification (properties, values,
at-rules, etc), but using the syntax and definitions in the <a
href="http://www.w3.org/TR/CSS21/">CSS2.1 specification</a>. <a
href="http://www.w3.org/TR/css-style-attr/">CSS Style Attributes</a>
defines its inclusion in element-specific style attributes.
<h3 id=css2><span class=secno>2.2. </span>CSS Level 2</h3>
<p>Although the <a href="http://www.w3.org/TR/2008/REC-CSS2-20080411/">CSS2
specification</a> is technically a W3C Recommendation, it passed into the
Recommendation stage before the W3C had defined the Candidate
Recommendation stage. Over time implementation experience and further
review has brought to light many problems in the CSS2 specification, so
instead of expanding an already <a
href="http://www.w3.org/Style/css2-updates/REC-CSS2-19980512-errata.html">unwieldy
errata list</a>, the CSS Working Group chose to define <cite>CSS Level 2
Revision 1</cite> (CSS2.1).
<p>CSS2.1 is now a Candidate Recommendation—effectively though not
officially the same level of stability as CSS2—and should be
considered to obsolete the CSS2 Recommendation. In case of any conflict
between the two specs CSS2.1 contains the definitive definition. Features
in CSS2 that were dropped from CSS2.1 should be considered to be at the
Candidate Recommendation stage, but note that many of these have been or
will be pulled into a CSS Level 3 working draft, in which case that
specification will, once it reaches CR, obsolete the definitions in CSS2.
<p>The <a href="http://www.w3.org/TR/CSS21/">CSS2.1 specification</a>
defines <dfn id=css-level-2>CSS Level 2</dfn> and the <a
href="http://www.w3.org/TR/css-style-attr/">CSS Style Attributes
specification</a> defines its inclusion in element-specific style
attributes.
<h3 id=css3><span class=secno>2.3. </span>CSS Level 3</h3>
<p><em>This section is non-normative.</em>
<p>CSS Level 3 builds on CSS Level 2 module by module, using the CSS2.1
specification as its core. Each module adds functionality and/or replaces
part of the CSS2.1 specification. The CSS Working Group intends that the
new CSS modules will not contradict the CSS2.1 specification: only that
they will add functionality and refine definitions. As each module is
completed, it will be plugged in to the existing system of CSS2.1 plus
previously-completed modules.
<p>From this level on modules are levelled independently: for example
Selectors Level 4 may well be defined before CSS Line Module Level 3.
<h2 id=css><span class=secno>3. </span>Cascading Style Sheets Definition</h2>
<p>As of 2007, <dfn id=cascading-style-sheets-css>Cascading Style Sheets
(CSS)</dfn> is defined by the following specifications. Each specification
in this list builds on and possibly modifies the definitions in the
previous specifications, with the base formed by <cite>CSS Level 2
Revision 1</cite>. (In other words, CSS is defined as <cite>CSS Level 2
Revision 1</cite>, modified by <cite>CSS Namespaces</cite>, modified by
<cite>Selectors Level 3</cite>, etc.) A valid CSS document is one that
conforms to this definition.
<ol>
<li><a href="http://www.w3.org/TR/CSS21/">CSS Level 2 Revision 1</a>
(including errata)
<li><a href="http://www.w3.org/TR/css-style-attr/">CSS Style
Attributes</a>
<li><a href="http://www.w3.org/TR/css3-namespace/">CSS Namespaces</a>
<li><a href="http://www.w3.org/TR/css3-selectors/">Selectors Level 3</a>
<li><a href="http://www.w3.org/TR/css3-color/">CSS Color Level 3</a>
</ol>
<h3 id=partial><span class=secno>3.1. </span>Partial Implementations</h3>
<p>So that authors can exploit the forward-compatible parsing rules to
assign fallback values, CSS layout implementations <strong>must</strong>
treat as invalid (and <a
href="http://www.w3.org/TR/CSS21/conform.html#ignore">ignore as
appropriate</a>) any at-rules, properties, property values, keywords, and
other syntactic constructs for which they have no usable level of support.
In particular, user agents <strong>must not</strong> selectively ignore
unsupported property values and honor supported values in a single
multi-value property declaration: if any value is considered invalid (as
unsupported values must be), CSS requires that the entire declaration be
ignored.
<h3 id=profiles><span class=secno>3.2. </span>CSS Profiles</h3>
<p>Not all implementations will implement all functionality defined in CSS.
For example, an implementation may choose to implement only the
functionality required by a CSS Profile. Profiles define a subset of CSS
considered fundamental for a specific class of CSS implementations. The
W3C CSS Working Group defines the following CSS profiles:
<ul>
<li><a href="http://www.w3.org/TR/css-mobile/">CSS Mobile Profile 2.0</a>
<li><a href="http://www.w3.org/TR/css-print/">CSS Print Profile 1.0</a>
<li><a href="http://www.w3.org/TR/css-tv">CSS TV Profile 1.0</a>
</ul>
<h3 id=experimental><span class=secno>3.3. </span>Experimental
Implementations</h3>
<p>To avoid clashes with future CSS features, the CSS2.1 specification
reserves a <a
href="http://www.w3.org/TR/CSS21/syndata.html#vendor-keywords">prefixed
syntax</a> for proprietary property and value extensions to CSS. The CSS
Working Group recommends that experimental implementations of features in
CSS Working Drafts also use vendor-prefixed property or value names. This
avoids any incompatibilities with future changes in the draft. Once a
specification reaches the Candidate Recommendation stage, implementors
should implement the non-prefixed syntax for any feature they consider to
be correctly implemented according to spec.