- From: ament <ament@xs4all.nl>
- Date: Fri, 24 Mar 2000 21:46:32 +0100
- To: www-style@w3.org
lets process your example.. ORIGINAL P table-row-group |-T table-cell '-S button There is no statement about _when_ the anonymous-table rules are applied or in what order. So legally spoken you can apply them in random order. I will process the rules (below) in 2 different orders (VERSION 1 and VERSION 2) which are both technically correct but will have different results. This means you don't know what the browser-result will be. The browser may choose how to render the result. Any interpretation using the specification and respecting all spec-rules is legally correct. Legally, I even state that CSS2-conformant browsers don't have to apply these anonymous rules at all (as long as you never claim or suggest that the rendered result is a _finished_ result of CSS2). You can state that: yes, anonymous-rules are being applied, but their applyance is being timed somewhere in the infinite future. What the browser shows is a 'half-product'. Hope that helps! greetings, Mark Ament ---------------------------------------------------------------------------- ----------------------------- generation of VERSION 1 apply rule 1 .. VERSION 1 {1} P table-row-group |-A table-row | |-T table-cell '-S button apply rule 4 .. VERSION 1 {1,4} A table '-P table-row-group |-A table-row | |-T table-cell '-S button apply rule 5 .. VERSION 1 {1,4,5} A table '-P table-row-group |-A table-row | |-T table-cell |-A table-row '-S button apply rule 6 .. VERSION 1 {1,4,5,6} A table '-P table-row-group |-A table-row | |-T table-cell |-A table-row |-A table-cell '-S button ---------------------------------------------------------------------------- ----------------------------- generation of VERSION 2 apply rule 7 .. VERSION 2 {7} P table-row-group |-T table-cell |-T table-cell '-S button apply rule 1 .. VERSION 2 {7,1} A table-row-group '-P table-row |-T table-cell |-T table-cell '-S button apply rule 2 .. VERSION 2 {7,1,2} A table '-A table-row-group '-P table-row |-T table-cell |-T table-cell '-S button ---------------------------------------------------------------------------- ----------------------------- At 22:33 20-3-00 -0800, you wrote: >Consider a case where T = table-cell, P = table-row-group, and T's next >sibling, S = button. Rule 1 says that a table-row will be generated >between P and T but doesn't imply that it spans S (since S is not a >table-cell). Rule 6 says that a table-row will be generate between P and >T and might imply that it spans S (because S is not a table row). > >So, does the table-cell parent that gets generated for S have the same >table-row parent that gets generated for T or does it get a different >generated table-row parent? In other words, are T and S in the same row >or different rows? > > 1.If the parent P of a 'table-cell' element T is not a 'table-row', >an object corresponding to a 'table-row' will be generated between > P and T. This object will span all consecutive 'table-cell' >siblings (in the document tree) of T. > 2.If the parent P of a 'table-row' element T is not a 'table', >'inline-table', or 'table-row-group' element, an object corresponding to >a > 'table' element will be generated between P and T. This object will >span all consecutive siblings (in the document tree) of T that > require a 'table' parent: 'table-row', 'table-row-group', >'table-header-group', 'table-footer-group', 'table-column', > 'table-column-group', and 'table-caption'. > 3.If the parent P of a 'table-column' element T is not a 'table', >'inline-table', or 'table-column-group' element, an object > corresponding to a 'table' element will be generated between P and >T. This object will span all consecutive siblings (in the > document tree) of T that require a 'table' parent: 'table-row', >'table-row-group', 'table-header-group', 'table-footer-group', > 'table-column', 'table-column-group', and 'table-caption'. > 4.If the parent P of a 'table-row-group' (or 'table-header-group', >'table-footer-group', or 'table-column-group') element T is not a > 'table' or 'inline-table', an object corresponding to a 'table' >element will be generated between P and T. This object will span all > consecutive siblings (in the document tree) of T that require a >'table' parent: 'table-row', 'table-row-group', 'table-header-group', > 'table-footer-group', 'table-column', 'table-column-group', and >'table-caption'. > 5.If a child T of a 'table' element (or 'inline-table') P is not a >'table-row-group', 'table-header-group', 'table-footer-group', or > 'table-row' element, an object corresponding to a 'table-row' >element will be generated between P and T. This object spans all > consecutive siblings of T that are not 'table-row-group', >'table-header-group', 'table-footer-group', or 'table-row' elements. > 6.If a child T of a 'table-row-group' element (or >'table-header-group' or 'table-footer-group') P is not a 'table-row' >element, an > object corresponding to a 'table-row' element will be generated >between P and T. This object spans all consecutive siblings of T > that are not 'table-row' elements. > 7.If a child T of a 'table-row' element P is not a 'table-cell' >element, an object corresponding to a 'table-cell' element will be > generated between P and T. This object spans all consecutive >siblings of T that are not 'table-cell' elements. >
Received on Friday, 24 March 2000 15:48:44 UTC