- From: Brad Kemper <brad.kemper@gmail.com>
- Date: Thu, 23 Feb 2012 14:18:39 -0800
- To: David Hyatt <hyatt@apple.com>
- Cc: Christoph Päper <christoph.paeper@crissov.de>, "www-style@w3.org Style" <www-style@w3.org>
On Feb 23, 2012, at 12:47 PM, David Hyatt <hyatt@apple.com> wrote: > On Feb 23, 2012, at 2:13 PM, Brad Kemper wrote: > >> >> On Feb 22, 2012, at 11:20 AM, Christoph Päper <christoph.paeper@crissov.de> wrote: >> >>> As if the widely varying syntax of at-constructs wasn’t confusing enough already. By now we probably have some at-rule for all of the following patterns: >>> >>> @foo; >>> @foo bar; >>> @foo {bar: baz;} >>> @foo bar {baz: qux;} >>> @foo {bar {baz: qux;}} >>> >>> You seem to want to add the bastard mix >>> >>> @foo bar {baz: qux; oof {rab: zab;}} >> >> I have repeated said that I would not do it like that. >> >>>>> Rules and rulesets shall not appear on the same syntactic level. >>>> >>>> Agreed WRT combining them at the same level, but it is not too late to change @page to not have bare declarations without a selector and braces. >>> >>> Huh? Do you want to turn >>> >>> @page {margin: 2cm;} >>> >>> into >>> >>> @page {@ {margin: 2cm;}} >>> >>> or what? That would mean changing CSS 2.1 – that’s a no-do. >> >> Huh? Is @ a selector. I have posted my proposed syntax before with some different variations, but never like that. Here it is again: >> >> @page { >> body { margin: 2cm; columns:3; } >> /* or maybe :root or :page instead of body */ >> >> p { font-size: 1.5 em; } >> >> @slot sidebar { flow-from: side-flow; /* etc. */ >> } >> > > Slots could also be pseudo-elements, e.g., > > ::slot(sidebar) { … } > > Then you wouldn't have an @-rule inside an @-rule. Css3-page already has @-rules inside @-rules. That is how margin boxes are styled. That is one reason why I prefer an '@' to a '::'. It makes the way you select the page area box for styling the same as how you select the margin boxes for styling. Another reason is that it is consistent with how regions are selected for setting the styles of content that appears within them (@region). I think it is a good mechanism, and having @slot, @region, and the 16 margin-box @-rules (@top-left-corner, etc.) all work in a similar way is a good thing. Another reason is that I think it looks weird to have the double-colon with no subject to its left. Do we do that anywhere else? It reminds me of pseudo-classes on universal selectors (if it had been a single colon with nothing before it).
Received on Thursday, 23 February 2012 22:19:14 UTC