Re: [css-display]? Compositing, expensive things, and laziness

What happens with re-sizing? Assuming the display-optionality:optional
element does not have fixed width/height and is in flow, then when the
element does get rendered it might cause the rest of the document to need
reflowing. That seems undesirable - users don't expect the webpage to
randomly change some time after 'loading' is finished.

Also, an idea: the default value is 'required' for visible elements, could
we specify the default as 'optional' for invisible elements (display:none,
visibility:hidden, etc)? Setting display-optionality: required could then
be a hint to the browser that the element should be pre-rendered because it
is likely to made visible soon. Perhaps a less imperative value than
'required' would be good for that - 'preferred' or something.


On Thu, Jun 20, 2013 at 8:42 AM, Tab Atkins Jr. <jackalmage@gmail.com>wrote:

> On Thu, May 2, 2013 at 4:15 PM, Tab Atkins Jr. <jackalmage@gmail.com>
> wrote:
> > Now, the proposal:
> >
> > We'd like to propose a way for an author to tag an element as being
> > "lazy" or "optional" in some sense, such that it's okay to let it lag
> > other things in displaying in situations like what I outline above.
> > This would be merely a rendering hint, with no direct effect
> > otherwise.
>
> Ali has just produced a nice-looking spec proposal for this:
> <
> https://docs.google.com/a/google.com/document/d/1JtUflBaj6_MjAzsDhtoEoxiYCxQXzSvzAw3NWpxTwvk/edit
> >
>
> The gist of it is that you can declare an element to be "optional",
> which just means that it SHOULD be rendered, but may do so late and
> not in-sync with the rest of the stuff on screen.  I think this is
> sufficiently generic to not accidentally bake in current
> implementation details, while still being relatively clear and useful.
>
> Additionally, it defines two events for when an optional element is
> rendered or unrendered, so you can show/hide cheap placeholders.
>
> ~TJ
>
>

Received on Saturday, 22 June 2013 12:12:15 UTC