2222
2323 < h1 > CSS3 module: Cascading and inheritance</ h1 >
2424
25- < h2 class ="no-num no-toc " id =longstatus > Editor's Draft 8 January 2009</ h2 >
25+ < h2 class ="no-num no-toc " id =longstatus-date > Editor's Draft 19 January
26+ 2009</ h2 >
2627
2728 < dl >
2829 < dt > This version:
2930
3031 < dd > < a
31- href ="http://www.w3.org/TR/2009/ED-css3-cascade-20090108 "> http://www.w3.org/TR/2009/ED-css3-cascade-20090108 </ a >
32+ href ="http://www.w3.org/TR/2009/ED-css3-cascade-20090119 "> http://www.w3.org/TR/2009/ED-css3-cascade-20090119 </ a >
3233
3334
3435 < dt > Latest version:
@@ -71,10 +72,9 @@ <h2 class="no-num no-toc" id=longstatus>Editor's Draft 8 January 2009</h2>
7172 < h2 class ="no-num no-toc " id =abstract > Abstract</ h2 >
7273
7374 < p > This CSS3 module describes how to find the specified value for all
74- properties on elements, margin boxes, and the page context. Values either
75- come from style sheets or the property's initial value. By way of
76- cascading and inheritance, values are propagated to all properties on all
77- elements and boxes.
75+ properties on all elements. Values either come from style sheets or the
76+ property's initial value. By way of cascading and inheritance, values are
77+ propagated to all properties on all elements.
7878
7979 < p > This module interfaces with several other modules. It relies on < a
8080 href ="#CSS3SYN " rel =biblioentry > [CSS3SYN]<!--{{!CSS3SYN}}--> </ a > to parse
@@ -86,7 +86,8 @@ <h2 class="no-num no-toc" id=abstract>Abstract</h2>
8686 combinations. The processing of specified values is described in < a
8787 href ="#CSS3VAL " rel =biblioentry > [CSS3VAL]<!--{{!CSS3VAL}}--> </ a > .
8888
89- < h2 class ="no-num no-toc " id =status > Status of this document</ h2 >
89+ < h2 class ="no-num no-toc " id =status-of-this-document > Status of this
90+ document</ h2 >
9091
9192 < p > This is a draft of a < a href ="http://www.w3.org/TR/css3-roadmap/ "> module
9293 of CSS level 3</ a > . It will probably be bundled with some other modules
@@ -119,31 +120,31 @@ <h2 class="no-num no-toc" id=status>Status of this document</h2>
119120 including Working Drafts and Notes can be found at < a
120121 href ="http://www.w3.org/TR/ "> http://www.w3.org/TR</ a > .
121122
122- < h2 class ="no-num no-toc " id =table > Table of contents</ h2 >
123+ < h2 class ="no-num no-toc " id =table-of-contents > Table of contents</ h2 >
123124 <!--begin-toc-->
124125
125126 < ul class =toc >
126- < li > < a href ="#introduction "> < span class =secno > 1. </ span > Introduction</ a >
127+ < li > < a href ="#introduction "> < span class =secno > 1 </ span > Introduction</ a >
127128
128- < li > < a href ="#input "> < span class =secno > 2. </ span > Input to and output from
129- this module</ a >
129+ < li > < a href ="#input-to-and-output-from-this-module "> < span class =secno > 2
130+ </ span > Input to and output from this module</ a >
130131
131- < li > < a href ="#at-import "> < span class =secno > 3. </ span > Importing style
132+ < li > < a href ="#at-import "> < span class =secno > 3 </ span > Importing style
132133 sheets</ a >
133134
134- < li > < a href ="#at-media-rule "> < span class =secno > 4. </ span > Named
135+ < li > < a href ="#at-media-rule "> < span class =secno > 4 </ span > Named
135136 < code > @media</ code > rules</ a >
136137
137- < li > < a href ="#cascading "> < span class =secno > 5. </ span > Cascading</ a >
138+ < li > < a href ="#cascading "> < span class =secno > 5 </ span > Cascading</ a >
138139
139- < li > < a href ="#inheritance "> < span class =secno > 6. </ span > Inheritance</ a >
140+ < li > < a href ="#inheritance "> < span class =secno > 6 </ span > Inheritance</ a >
140141
141- < li > < a href ="#initial "> < span class =secno > 7. </ span > Initial value</ a >
142+ < li > < a href ="#initial-value "> < span class =secno > 7 </ span > Initial value</ a >
142143
143- < li > < a href ="#computing-weight "> < span class =secno > 8. </ span > Computing
144+ < li > < a href ="#computing-weight "> < span class =secno > 8 </ span > Computing
144145 weight</ a >
145146
146- < li > < a href ="#conformance "> < span class =secno > 9. </ span > Conformance</ a >
147+ < li > < a href ="#conformance "> < span class =secno > 9 </ span > Conformance</ a >
147148
148149 < li class =no-num > < a href ="#acknowledgments "> Acknowledgments</ a >
149150
@@ -163,7 +164,7 @@ <h2 class="no-num no-toc" id=table>Table of contents</h2>
163164
164165 < hr >
165166
166- < h2 id =introduction > < span class =secno > 1. </ span > Introduction</ h2 >
167+ < h2 id =introduction > < span class =secno > 1 </ span > Introduction</ h2 >
167168
168169 < p > One of the fundamental design principles of CSS is < em > cascading</ em > ,
169170 which allows several style sheets to influence the presentation of a
@@ -173,14 +174,15 @@ <h2 id=introduction><span class=secno>1. </span>Introduction</h2>
173174 < p > The opposite problem arises when no declarations try to set a the value
174175 for an element/property combination. In this case, a value must be found
175176 by way of < em > < a href ="#inherited "> inheritance</ a > </ em > or by looking at
176- the < em > < a href ="#initial0 "> initial value</ a > </ em > .
177+ the property's < em > < a href ="#initial-value0 "> initial value</ a > </ em > .
177178
178- < p > The rules for finding a the specified value for all properties on
179- elements, margin boxes, and the page context is described in this
180- specification.
179+ < p > The rules for finding a the specified value for all properties on all
180+ elements is described in this specification. The rules for finding the
181+ specified values in the page context and the margin boxes are described in
182+ < a href ="#CSS3PAGE " rel =biblioentry > [CSS3PAGE]<!--{{CSS3PAGE}}--> </ a > .
181183
182- < h2 id =input > < span class =secno > 2. </ span > Input to and output from this
183- module</ h2 >
184+ < h2 id =input-to-and-output-from-this-module > < span class =secno > 2
185+ </ span > Input to and output from this module</ h2 >
184186
185187 < p > The input to the computations described in this module is:
186188
@@ -193,7 +195,7 @@ <h2 id=input><span class=secno>2. </span>Input to and output from this
193195 </ ul >
194196
195197 < p > The output of the computations described in this module is a specified
196- value for all properties on elements, margin boxes, and the page context .
198+ value for all properties on all elements .
197199
198200 < p > In order to find the specified values, implementations must first
199201 identify which statements that apply to the document. This is done by:
@@ -217,14 +219,12 @@ <h2 id=input><span class=secno>2. </span>Input to and output from this
217219 < li > Expanding all remaining @import rules.
218220 </ ol >
219221
220- < p > Then, for every element, margin box, and page context, the value for
221- each property can be found by following this pseudo-algorithm:
222+ < p > Then, for every element, the value for each property can be found by
223+ following this pseudo-algorithm:
222224
223225 < ol >
224226 < li > Identify all declarations that apply to the element (as described in
225- < a href ="#SELECT " rel =biblioentry > [SELECT]<!--{{!SELECT}}--> </ a > ), margin
226- box or page context (as described in < a href ="#CSS3PAGE "
227- rel =biblioentry > [CSS3PAGE]<!--{{CSS3PAGE}}--> </ a > ).
227+ < a href ="#SELECT " rel =biblioentry > [SELECT]<!--{{!SELECT}}--> </ a > )
228228
229229 < li > If the cascading process (described below) yields a winning
230230 declaration and the value of the winning declaration is not ‘< code
@@ -250,7 +250,7 @@ <h2 id=input><span class=secno>2. </span>Input to and output from this
250250 This is described in the < a href ="/TR/css3-values "> Values and Units</ a > < a
251251 href ="#CSS3VAL " rel =biblioentry > [CSS3VAL]<!--{{!CSS3VAL}}--> </ a > module.
252252
253- < h2 id =at-import > < span class =secno > 3. </ span > Importing style sheets</ h2 >
253+ < h2 id =at-import > < span class =secno > 3 </ span > Importing style sheets</ h2 >
254254
255255 < p > The < dfn id =import > ‘< code class =css > @import</ code > ’</ dfn >
256256 rule allows users to import style rules from other style sheets. Any
@@ -274,7 +274,7 @@ <h2 id=at-import><span class=secno>3. </span>Importing style sheets</h2>
274274
275275 < p > So that user agents can avoid retrieving resources for unsupported media
276276 types, authors may specify media-dependent @import rules. These < dfn
277- id =conditional title ="conditional import|media-dependent
277+ id =conditional-imports title ="conditional import|media-dependent
278278 import "> conditional imports</ dfn > specify comma-separated “media
279279 queries” after the URI.
280280
@@ -311,8 +311,8 @@ <h2 id=at-import><span class=secno>3. </span>Importing style sheets</h2>
311311
312312 < p > Imports with different names (together with any named < a
313313 href ="#at-media-rule "> @media rules,</ a > see below) represent < dfn
314- id =alternative > alternative style sheets</ dfn > . The UA should provide a way
315- for the user to select an alternative by name.
314+ id =alternative-style-sheets > alternative style sheets</ dfn > . The UA should
315+ provide a way for the user to select an alternative by name.
316316
317317 < p > The rules for which style sheet to import are as follows:
318318
@@ -401,15 +401,16 @@ <h2 id=at-import><span class=secno>3. </span>Importing style sheets</h2>
401401
402402 < p class =note > HTML < a href ="#HTML401 "
403403 rel =biblioentry > [HTML401]<!--{{HTML401}}--> </ a > uses the term < dfn
404- id =preferred > preferred style sheet</ dfn > for the named style sheets that
405- the author marked as the default. In CSS, these are all style sheets whose
406- name is the first name to occur on any ‘< code
404+ id =preferred-style-sheet > preferred style sheet</ dfn > for the named style
405+ sheets that the author marked as the default. In CSS, these are all style
406+ sheets whose name is the first name to occur on any ‘< code
407407 class =css > @import</ code > ’ or ‘< code class =css > < a
408- href ="#media "> @media</ a > </ code > ’. < dfn id =alternate > Alternate style
409- sheets</ dfn > are all other named style sheets. Finally, HTML calls style
410- sheets without a name < dfn id =persistent > persistent style sheets</ dfn > ,
411- because they are imported together with the preferred ones as well as with
412- any alternatives.
408+ href ="#media "> @media</ a > </ code > ’. < dfn
409+ id =alternate-style-sheets > Alternate style sheets</ dfn > are all other named
410+ style sheets. Finally, HTML calls style sheets without a name < dfn
411+ id =persistent-style-sheets > persistent style sheets</ dfn > , because they are
412+ imported together with the preferred ones as well as with any
413+ alternatives.
413414
414415 < p class =note > The UA should not only provide the user with a choice of
415416 alternative style sheets, but should also allow the user to turn all style
@@ -430,7 +431,7 @@ <h2 id=at-import><span class=secno>3. </span>Importing style sheets</h2>
430431 must ignore any medium specified for the same style sheet in a link from a
431432 document?]
432433
433- < h2 id =at-media-rule > < span class =secno > 4. </ span > Named < code > < a
434+ < h2 id =at-media-rule > < span class =secno > 4 </ span > Named < code > < a
434435 href ="#media "> @media</ a > </ code > rules</ h2 >
435436
436437 < p > An < dfn id =media > @media</ dfn > rule specifies the target media types
@@ -554,11 +555,11 @@ <h2 id=at-media-rule><span class=secno>4. </span>Named <code><a
554555</ pre >
555556 </ div >
556557
557- < h2 id =cascading > < span class =secno > 5. </ span > Cascading</ h2 >
558+ < h2 id =cascading > < span class =secno > 5 </ span > Cascading</ h2 >
558559
559- < p > The purpose of cascading is to find one < dfn id = winning > winning
560- declaration</ dfn > among the set of declarations that apply for a given
561- element/property combination.
560+ < p > The purpose of cascading is to find one < dfn
561+ id = winning- declaration> winning declaration </ dfn > among the set of
562+ declarations that apply for a given element/property combination.
562563
563564 < p > User agents must sort declarations according to the following criteria,
564565 in order of importance:
@@ -582,18 +583,18 @@ <h2 id=cascading><span class=secno>5. </span>Cascading</h2>
582583
583584 < p > The sorting process continues until one winning declaration is found.
584585
585- < h2 id =inheritance > < span class =secno > 6. </ span > Inheritance</ h2 >
586+ < h2 id =inheritance > < span class =secno > 6 </ span > Inheritance</ h2 >
586587
587588 < p > Inheritance is a way of propagating property values from parent elements
588589 to their children. Inheritance means that the specified value of a given
589590 element/property is copied from the parent element's computed value for
590591 the same property.
591592
592593 < p > The root element, which has no parent element, inherits the initial
593- value of the property.
594-
595- < p > The page context inherits from the initial value of the property. Margin
596- boxes inherit from the page context.
594+ value of the property. <!--
595+ <p>The page context inherits from the initial value of the property. Margin boxes inherit from the page context.
596+ -->
597+
597598
598599 < p > Pseudo-elements inherit according to a fictional tag sequence described
599600 for each pseudo-element < a href ="#SELECT "
@@ -612,14 +613,15 @@ <h2 id=inheritance><span class=secno>6. </span>Inheritance</h2>
612613 class =css > inherit</ code > ’ value is set on the root element, the
613614 property is assigned its initial value.
614615
615- < h2 id =initial > < span class =secno > 7. </ span > Initial value</ h2 >
616+ < h2 id =initial-value > < span class =secno > 7 </ span > Initial value</ h2 >
616617
617- < p > Each property has an < dfn id =initial0 > initial value</ dfn > which becomes
618- the specified value when cascading and inheritance does not yield a value.
619- Also, the initial value can be explicitly specified with the ‘< code
620- class =css > initial</ code > ’ keyword which all properties accept.
618+ < p > Each property has an < dfn id =initial-value0 > initial value</ dfn > which
619+ becomes the specified value when cascading and inheritance does not yield
620+ a value. Also, the initial value can be explicitly specified with the
621+ ‘< code class =css > initial</ code > ’ keyword which all properties
622+ accept.
621623
622- < h2 id =computing-weight > < span class =secno > 8. </ span > Computing weight</ h2 >
624+ < h2 id =computing-weight > < span class =secno > 8 </ span > Computing weight</ h2 >
623625
624626 < p > In order to sort declarations in the cascading process, the weight of a
625627 declaration must be known. In CSS3, the weight of a declaration is based
@@ -688,7 +690,7 @@ <h2 id=computing-weight><span class=secno>8. </span>Computing weight</h2>
688690 < p class =note > Note that non-CSS presentational hints had a higher weight in
689691 CSS2.
690692
691- < h2 id =conformance > < span class =secno > 9. </ span > Conformance</ h2 >
693+ < h2 id =conformance > < span class =secno > 9 </ span > Conformance</ h2 >
692694
693695 < p > [TBD]
694696
@@ -790,42 +792,42 @@ <h2 class=no-num id=index>Index</h2>
790792 <!--begin-index-->
791793
792794 < ul class =indexlist >
793- < li > Alternate style sheets, < a href ="#alternate " title =" Alternate style
794- sheets "> < strong > # </ strong > </ a >
795+ < li > Alternate style sheets, < a href ="#alternate- style-sheets "
796+ title =" Alternate style sheets "> < strong > 3 </ strong > </ a >
795797
796- < li > alternative style sheets, < a href ="#alternative " title =" alternative
797- style sheets "> < strong > # </ strong > </ a >
798+ < li > alternative style sheets, < a href ="#alternative-style-sheets "
799+ title =" alternative style sheets "> < strong > 3 </ strong > </ a >
798800
799- < li > conditional import, < a href ="#conditional " title ="conditional
800- import "> < strong > # </ strong > </ a >
801+ < li > conditional import, < a href ="#conditional-imports " title ="conditional
802+ import "> < strong > 3 </ strong > </ a >
801803
802804 < li > ‘< code class =css > @import</ code > ’, < a href ="#import "
803- title ="'@import' "> < strong > # </ strong > </ a >
805+ title ="'@import' "> < strong > 3 </ strong > </ a >
804806
805807 < li > inheritance, < a href ="#inherited "
806- title =inheritance > < strong > # </ strong > </ a >
808+ title =inheritance > < strong > 6 </ strong > </ a >
807809
808- < li > initial value, < a href ="#initial0 " title ="initial
809- value "> < strong > # </ strong > </ a >
810+ < li > initial value, < a href ="#initial-value0 " title ="initial
811+ value "> < strong > 7 </ strong > </ a >
810812
811- < li > @media, < a href ="#media " title ="@media "> < strong > # </ strong > </ a >
813+ < li > @media, < a href ="#media " title ="@media "> < strong > 4 </ strong > </ a >
812814
813- < li > media-dependent import, < a href ="#conditional " title =" media-dependent
814- import "> < strong > # </ strong > </ a >
815+ < li > media-dependent import, < a href ="#conditional-imports "
816+ title =" media-dependent import "> < strong > 3 </ strong > </ a >
815817
816- < li > persistent style sheets, < a href ="#persistent " title =" persistent style
817- sheets "> < strong > # </ strong > </ a >
818+ < li > persistent style sheets, < a href ="#persistent- style-sheets "
819+ title =" persistent style sheets "> < strong > 3 </ strong > </ a >
818820
819- < li > preferred style sheet, < a href ="#preferred " title =" preferred style
820- sheet "> < strong > # </ strong > </ a >
821+ < li > preferred style sheet, < a href ="#preferred- style-sheet "
822+ title =" preferred style sheet "> < strong > 3 </ strong > </ a >
821823
822- < li > winning declaration, < a href ="#winning " title ="winning
823- declaration "> < strong > # </ strong > </ a >
824+ < li > winning declaration, < a href ="#winning-declaration " title ="winning
825+ declaration "> < strong > 5 </ strong > </ a >
824826 </ ul >
825827 <!--end-index-->
826828
827829 < h2 class =no-num id =property-index > Property index</ h2 >
828- <!--begin properties-->
830+ <!--begin- properties-->
829831
830832 < table class =proptable >
831833 < thead >
@@ -846,4 +848,4 @@ <h2 class=no-num id=property-index>Property index</h2>
846848
847849 < tbody >
848850 </ table >
849- <!--end properties-->
851+ <!--end- properties-->
0 commit comments