最近一直在思考这个问题。为什么 HTML5 不真正允许您将 HTML 加载到文档中以分解 HTML 文件?
它支持几乎所有其他 Assets (图像、视频、音频)。
是的,我们有 iframe
、embeds
和 objects
,但它们是沙盒化的,不遵循文档其余部分的流程.
我在想这样的事情:
<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 邮件列表中:Client-side includes proposal :香农提出的正是你所说的,解析器在加载文档片段时必须阻塞。 Ian Hickson 拒绝了它,因为延迟成本太高。此外,这是一个许多 Web 服务器已经提供的简单功能,因此被认为不值得付出代价。
您可能想使用 seamless
attribute of iframe
进行调查,这会导致将完整的文档放置在文档中,但就像任何 block 元素一样(从宿主文档继承样式)。不过,我认为它还没有得到很多浏览器的支持。
关于html - 为什么 HTML5 不包含将本地 HTML 加载到文档中的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6875404/