- From: Brian Kardell <bkardell@gmail.com>
- Date: Mon, 13 Jan 2014 14:08:10 -0500
- To: Alan Stearns <stearns@adobe.com>
- Cc: "CSS WWW Style (www-style@w3.org)" <www-style@w3.org>
- Message-ID: <CADC=+jcshYgrjY5m+c5g+fN1Ooc=zji+VD6+tu==KHwN+2W=1A@mail.gmail.com>
On Jan 9, 2014 7:02 PM, "Alan Stearns" <stearns@adobe.com> wrote: > > Hey all, > > The main remaining issue in the CSS Regions specification is 16858 [1]. It > proposes to make flow-from not apply to elements, in favor of making it > apply to CSS-generated containers only. I will be asking the working group > to resolve to close this issue when we meet in Seattle, but I would like > to prime that discussion with some debate on the list, as I think there's > only a handful of people who are passionately interested in this issue. > > The main argument for the issue is the position that content should be > separated from presentation, which is a good theoretical stance. But this > theory does not match practice. HTML elements are used as presentational > boxes and containers *nearly everywhere*. Server and client code routinely > take content markup and mash it into a presentational HTML template. In > some cases, using named flows and elements as regions can provide more > content/presentation separation than current practice allows [2]. > > The most basic argument I have against this issue is that it doesn't make > sense to have a CSS property that does not work on elements. The only > other instance of this is 'content', and we plan on extending its use to > elements. I think it's preferable to design properties that are as widely > applicable as possible. > > One thread of argument has been that flow-from should only apply to the > proposed ::slot pseudo-element in a grid container. Restricting regions to > ::slots introduces a dependency - named flows could only be used with grid > positioning. This is much too restrictive - there are good uses for named > flows that either do not need to require grid (static positioning of > regions), or do not work well with grid (see the navigation overflow menu > [3]). Cross-feature dependencies should be avoided when possible. > > Most importantly, disallowing elements as regions reduces or eliminates > the value of using named flows to explain fragmentation [4]. The web is > built on elements, and extending functionality works when there are > elements to start from. We might someday define CSS-generated containers > with extension points, but they currently are a dead-end. The CSSOM that > is defined for named flows only works with actual HTML elements, so in > order to use CSS Regions as a building block for the extensible web, > flow-from needs to apply to elements. > > [1] https://www.w3.org/Bugs/Public/show_bug.cgi?id=16858 > [2] http://lists.w3.org/Archives/Public/www-style/2013Dec/0408.html > [3] http://lists.w3.org/Archives/Public/www-style/2013Nov/0401.html > [4] http://lists.w3.org/Archives/Public/www-style/2013Oct/0675.html > I understand the hesitation here and I sympathize with the conceptual desire to fully separate presentation from structure - in fact, I want myself that quite badly. Perhaps there is something considerably missing in a larger scheme, like an explanation of what is painted on the screen which has a default implied mapping to DOM, but which is somehow clearly itself decoupled - maybe some kind of render tree of boxes and shapes that is a projection created from, but not actually the DOM is hidden under there just waiting for an elegant definition to unearth it and provide some sanity we could build upon - I honestly don't know. What does seem to be the case, however, is that: 1. markup via template for providing presentational concerns is common and actually grokable and expanding quickly to the client side. In this scenario, the proposal improves the situation by helping to decouple further. 2. The only counter proposal i have seen is overflow: fragments which seems (to me: to not be very actively moving forward and, given where it is currently, I have difficulty seeing it solving the same problems. Very possibly it could and it is just under defined - this is just my simple, honest assessment. Either way it seems hard to call it a real alternative. 3. It's very easy to let perfect be the enemy of good here and think that we could define one or more very good high level interfaces which let this be pure CSS. I think that this is unlikely - I've yet to see an answer that fully separates without adding what seems to me dubious amounts of complexity - again, just my take on it - but i feel like the regions proposal has a lot of decent answers and bits that would allow us to harness the creative powers of the larger community for ideas in higher level abstractions toward the perfection we are searching for and provide some semblance of order for lots of developing specs. I think it would be a shame to let this bug be the main reason for disagreement unless someone has a really great alternative pretty soon.
Received on Monday, 13 January 2014 19:08:43 UTC