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

我最近在想这件事。 为什么HTML5不能真正让您将HTML加载到文档中来分解您的HTML文件?

它支持几乎所有其他资产(图像,视频,音频)。

是的,我们有iframesembedsobjects但它们是沙盒,并且不遵循文档其余部分的流程。

我正在考虑类似的东西:

<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" />

我很乐意有人向我解释这一点。 在我们制作的几乎每个Web应用程序中,我们都使用某种形式的模板来分解HTML,为什么HTML5不仅仅包含它?

我会感激你的(无焰)思想。

马特


事实证明,这已经出现在WHATWG邮件列表中:客户端包含提案:Shannon提出了您正在说的,解析器在加载文档片段时必须阻止的内容。 Ian Hickson拒绝了它,因为延迟成本太高。 此外,许多Web服务器已经提供了一个简单的功能,所以它被认为不值得。

您可能想要调查使用iframeseamless属性,这会导致将完整文档放置在文档中,但是像任何块元素一样(从主机文档继承样式)。 尽管如此,我并不认为它受到许多浏览器的支持。


不,每个请求都不需要往返服务器,如果模板的内容不变,那么它可以被缓存并且更少的数据必须被传送。 这就是为什么你把CSS和JavaScript放入单独文件的原因。


问了类似的问题,这是可能的:HTML5包含文件

Rafa的回答:


使用对象标签:

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

foo.inc应该包含有效的HTML。


我在Konqueror,Firefox和Chromium上测试过它。

如果你觉得它有用(我这样做),请注意Rafa的答案(不是我的),因为“这是不可能的”正在像疾病一样蔓延。

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

上一篇: Why does HTML5 not include a way of loading local HTML into the document?

下一篇: Compare/contrast HTML, XHTML, XML, and HTML5