As for other implementations the interoperability
risks are quite low as reaching spec-compliance is quite simple.
For web developers, I'll signal interest from Facebook here. This spec seems useful in helping to give the site better control of perf on complex layouts, infinite scrolls, etc. I don't know that we could assess the actual impact without seeing this in practice.A few thoughts:1) Right now stylesheet recalc / layout and painting perf is hard to measure. I have a hard time envisioning how we'll get people to find good opportunities for these kinds of optimizations and measure their impact without a lot of guesswork.2) Having a quick way to disable these optimizations via devtools will likely be useful for debugging.3) How will this interact with scroll anchoring? Let's say I have this page:<div class="feed"><div class="story" id="story1">...</div><div class="story" id="story2">...</div><div class="story" id="story3">...</div><div class="story" id="story4">...</div><div class="story" id="story5">...</div></div>The "story" class has content containment (so *not* size).The user loads the page. Stories 1 and 2 are above the fold so they get layout / painted. the user scrolls and now story 2 and 3 are in the viewport but story 1 is above the viewport.A new story comes in. The site inserts a story above story1 but doesn't want to alter the view (as seen by the user). It'd be great if there were an interaction of scroll anchoring and containment so that the browser can realize that inserting a story above story1 will not change the current view the user is seeing and not have to do any layout.
On Monday, April 25, 2016 at 1:11:55 AM UTC-7, PhistucK wrote:Sorry for the intent-to-implement kind of notes, but here we go.On Mon, Apr 25, 2016 at 10:52 AM, 'Emil A Eklund' via blink-dev <blin...@chromium.org> wrote:As for other implementations the interoperability
risks are quite low as reaching spec-compliance is quite simple.Since there are no public signals from any other browser (not even one), I would say that the interoperability and compatibility risks are pretty huge. Stuff may leak out to the page (obscuring other content, overlapping with other content, dimming a website completely unusable) in websites that only test in Chrome (not uncommon), potentially causing a massively bad appearance (sort of like Internet Explorer 6 versus Chrome in the early days of Chrome).Also, no signals from web developers? So, what makes you think this is even needed (I agree it is, but still)?☆PhistucK
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
This is an example of a use case we hope to be able to optimize in the future on top of the containment features. Containment allows us to peformantly answer questions like "is this story offscreen," as you observed. That said, it's tricky work to get this right without bugs or unintended side-effects, which is why we are decoupling the feature of containment from specific promises about performance.Right now we're working on the use case of throttling/avoiding layout etc for cross-domain iframes that are not visible. More tricky same-domain use cases will come later. And as you can imagine, with a declarative system like the web, it's hard to strike the right balance between flexibility for user agents to optimize, and guaranteed performance in specific scenarios.
(i'm also a bit curious why we need the containment properties for iframes -- I'd think that iframes implicitly have strict containment and wouldn't need explicit specification)