Why does HTML5 not include a way of loading local HTML into the document?

I've thinking about this a lot lately. Why does HTML5 not really let you load HTML into your document to break up your HTML files?

It has support for nearly every other asset (images, videos, audio).

Yes we have iframes , embeds , and objects but they are sandboxed and don't follow the flow of the rest of the document.

I was thinking of something like:

<h2>My wonderful application</h2>

<include src = "leftPane.html" type = "text/html" />

<include src = "main.html" type = "text/html" />

<include src = "footer.html" type = "text/html" />

I would love for someone to explain this to me. In nearly every web application we make, we use some form of templating to break up our HTML, so why does HTML5 not just include it?

I'd appreciate your (flameless) thoughts.

Matt


As it turns out, this has come up in the WHATWG mailing lists: Client-side includes proposal: Shannon proposed exactly what you are saying, where the parser has to block while loading document fragments. Ian Hickson rejected it because the latency cost is too high. Besides, it's a simple feature that many web servers already provide, so it was deemed not worth the cost.

You may instead want to investigate using the seamless attribute of iframe , which causes a full document to be placed within the document but act like any block element (inheriting styles from the host document). I don't think it's supported by many browsers yet though.


No, each request wold not require a round trip to the server, if the contents of the templates ist constant, then it can be cached and less data has to be transferred. This is the reason why you put css and javascript into seperate files.


Similar question was asked and it is possible: HTML5 include file

Rafa's answer:


Use the object tag:

<object name="foo" type="text/html" data="foo.inc"/>

foo.inc should include valid HTML.


I tested it on Konqueror, Firefox and Chromium.

If you find it useful (I do), please upvote Rafa answer (not mine) because "it is not possible" is spreading like disease.

链接地址: http://www.djcxy.com/p/88918.html

上一篇: 在HTML5中,为什么<img>标签需要结束斜线或结束标记?

下一篇: 为什么HTML5不包含将本地HTML加载到文档中的方式?