HTML5包含文件

48 html5

最好的方法是什么 - 跨浏览器兼容以在HTML5中包含HTML文件.

我正在HTML5中构建一个站点,并希望将导航器放在一个单独的文件中并包含在站点页面中.

Raf*_*afa 72

使用object标签:

<object name="foo" type="text/html" data="foo.inc"></object>
Run Code Online (Sandbox Code Playgroud)

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

注意:请勿使用自闭式<object/>样式.这将阻止标签显示后的内容.


小智 49

<object> 工作正常,虽然它不是一个自动关闭的标签,所以它应该看起来像这样(否则它是无效的HTML5):

<object name="foo" type="text/html" data="foo.inc"></object>
Run Code Online (Sandbox Code Playgroud)

<embed> 也可用于包含外部html内容(以及任何MIME类型):

<embed type="text/html" src="foo.inc">
Run Code Online (Sandbox Code Playgroud)

  • 对于<object>和<embed>方法,CSS并未应用于包含的HTML. (3认同)

den*_*nis 5

对于HTML5,您可以尝试:

<head>
    <link rel="import" href="/path/to/imports/stuff.html">
</head>
Run Code Online (Sandbox Code Playgroud)

(https://www.html5rocks.com/en/tutorials/webcomponents/imports/)

如果在目标浏览器中未实现此功能,则可以使用webcomponents polyfill:http://webcomponents.org/polyfills/


Sco*_*nce 3

如果您正在编写纯 HTML,则不可能包含文件。但是,您可以使用 Apache 的服务器端包含 (SSI) 功能,也可以使用某种脚本语言(Python、Ruby、PHP 等)来组装页面。