Re: [HTML Imports]: Sync, async, -ish?

John's commentary just triggered a thought in my head. We should stop
saying that HTML Imports block rendering. Because in reality, they don't.
It's the scripts that block rendering.

Steve's argument is not about HTML Imports needing to be async. It's about
supporting legacy content with HTML Imports. And I have a bit less sympathy
for that argument.

You can totally build fully asynchronous HTML Imports-based documents, if
you follow these two simple rules:
1) Don't put scripts after imports in main document
2) Use custom elements

As an example:

index.html:
<link rel=import href=my-ad.html>
...
<my-ad></my-ad>
..

my-ad.html:
<script>
document.register("my-ad", ... );
...

There won't be any rendering blocked here. The page will render, then when
my-add.html loads, it will upgrade the "my-ad" element to display the
punch-the-monkey thing.

:DG<

Received on Wednesday, 20 November 2013 18:22:42 UTC