3

我正在使用 HTML/CSS 开发一个静态网站。我的网站上有 7 个页面,每个页面都有完全相同的标题内容。HTML中是否有某种导入/包含功能?

这是我要寻找的那种东西的例子(注意我完全编造了语法):

[来源(​​header.html)]

<html>
    <head><title>Source Page</title></head>
    <body>
        <div id="myheader">Hello, World!</div>
    <body>
</html>   

[从源导入的页面]

<html>
    <head><title>My Title</title></head>
    <body>
        <div import="id:myheader;source:url('header.html');"/>
    <body>
</html>

谢谢!

4

3 回答 3

3

不是这样的,不。有几个选项,按可访问性和易用性的顺序排列:

  1. 服务器端包含(假设您的静态文件服务器支持它们 - 大多数都支持)。
  2. iframes
  3. 单页应用程序样式(需要 JavaScript)。
  4. framesets(遗留,尽可能避免)。

例子

SSI

<!--#include virtual="header.html" -->

iframes

<!-- Assuming HTML5 -->
<iframe src="header.html" seamless></iframe>

Javascript

<script>
// We have a magic ajax function
ajax("header.html", function(data) {
    document.getElementById("header").innerHTML = data;
});
</script>

framesets

只是不要:-)

于 2012-11-10T17:22:04.077 回答
0

不,HTML 不提供此类功能。但是,您可以使用服务器端(这里有很多选项,取决于您的服务器设置)或客户端(JavaScript,使用 AJAX 加载额外内容)解决方案来实现结果。

于 2012-11-10T17:21:05.220 回答
0

您可以使用 HTML 模板实现相同的功能.....如果您使用的是 Dreamweaver,则为您的页眉页脚和整个站点的通用布局创建 1 个 .dwt 文件............它将自动包含在所有你的页面.....:)

不需要任何服务器端脚本,只需纯 html ............

于 2013-07-17T08:48:54.493 回答