[css3-layout] Nested templates and CSS rule order

Back with another question...

Example X [1] mentions that you can use the same letters for a nested
template. If I were to do so with said example, my CSS could look like
this:

body {
     display: "a   b"
              10em *;
}
#nav { position: a; }

#content {
     position: b;

     display: "c   .   d   .   a   "
              ".   .   .   .   .   "/1em
              ".   .   b   .   .   "
               *  1em  *  1em  *;
}

.module.news { position: c; }
.module.sports { position: d; }
.module.personal { position: a; }
#foot { position: b; }



Now if I use the same rules, but changed the order of the CSS rules, like this:



#foot { position: b; }

#nav { position: a; }

.module.personal { position: a; }

#content {
     position: b;

     display: "c   .   d   .   a   "
              ".   .   .   .   .   "/1em
              ".   .   b   .   .   "
               *  1em  *  1em  *;
}

body {
     display: "a   b"
              10em *;
}

.module.news { position: c; }
.module.sports { position: d; }



...it becomes less clear what the user agent should do. Since #nav is
a child of both body and #content, and both suggest the element is
flowed into their "a" slots, should it go into the #content template
(which is the nearest parent template element) or in the body template
(which is the latest rule to include the "a" slot) ?. Or are
template-positioned elements required to be defined after the template
element? This appears to be the case in all the spec examples, but I
don't see any wording that indicates that it is required.

Thanks,

Alexis

[1] http://www.w3.org/TR/2009/WD-css3-layout-20090402/#position0
(somewhere under here)

Received on Thursday, 7 May 2009 15:33:34 UTC