Re: anonymous table objects

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