Включить html файл в html с помощью html5

У меня есть 2 файла HTML, предположим a.html и b.html. В a.html я хочу включить b.html.

В JSF я могу сделать это так:

<ui:include src="b.xhtml" />

Это означает, что внутри файла a.xhtml я могу включить b.xhtml.

Как мы можем сделать это в файле *.html?

с помощью html 5 (если это вообще можно сделать в html 5).

Ответ 1

Удивительно, но был задан тот же вопрос, и это возможно: HTML5 включает файл

Ответ Рафы:


Используйте тег object:

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

foo.inc должен включать допустимый HTML.


Я тестировал его на Konqueror, Firefox и Chromium.

Обратите внимание, что вы должны использовать отдельный тег </object>, иначе любой контент после его отбрасывания.

Если вы сочтете это полезным (я делаю), пожалуйста, поддержите ответ Рафы (не мой), потому что "это невозможно" распространяется как болезнь.

Ответ 2

Если ваш сервер поддерживает SSI (на стороне сервера), вы можете поместить следующее в свои html файлы, не требуя языка сценариев или что-то еще. Apache имеет SSI включен по умолчанию (я думаю?)

<!--#include file="same_path_file.html" -->
<!--#include virtual="docroot_file.html" -->

"файл" относится к текущему файлу и, вероятно, к тому, что вы будете использовать для включения связанных файлов, таких как "actual_article_poll.html".

"виртуальный" относится к корню документа (т.е. к корню вашего сайта), и вы будете использовать его для включения глобальных файлов, таких как верхние и нижние колонтитулы.

Не имеет значения, какой из них вы выберете, но полезно знать разницу между ними.

Кроме того, директива include делает новый внутренний HTTP-запрос для сервера для каждого файла, поэтому вы можете включить php файлы и подобные, и они будут выполнены так, как они должны.

Вот полезный обзор SSI: http://en.wikipedia.org/wiki/Server_Side_Includes

Ответ 3

Чтобы использовать функцию включения PHP в HTML5, вам просто нужно отредактировать файл .htaccess следующим образом:

    <Files *.html>
ForceType application/x-httpd-php
</Files>

Теперь вы можете использовать любой PHP-код в вашем html файле следующим образом:

<?php include 'menu.html'; ?>

Приветствия;)

Ответ 4

HTML5 не отличается от HTML 4.01 в этом смысле тем, что это просто невозможно сделать без каких-либо скриптов.