我正在构建一个小型网站(个人网站),其中每个网页都有相同的标题元素集(我不是在讨论< head>元素)。换句话说,我希望每个页面在页面顶部和下面的相同导航栏中具有基本相同的标题(每个页面可能有微小的差异)。这有点像StackOverflow如何在每个页面的顶部都有导航栏(带有徽标,问题,标签等按钮)。
是否可以为每个网页创建这样的标题而无需复制和粘贴HTML代码?我真的不想遇到这样的情况:如果我想进行一次更改,我将不得不更改包含标题的所有页面。
答案 0 :(得分:5)
真正的网站使用真正的网络框架,它有一个称为“布局”的概念(至少在Rails中称为它们;正如Uwe的回答中所提到的,它们在ASP.NET中被称为母版页)。所有常见的“模板”东西都会进入布局。
答案 1 :(得分:2)
如何在服务器端语言(如PHP或ASP.NET中的母版页)中包含文件?
答案 2 :(得分:1)
您需要使用某种动态页面处理,无论是PHP,server-side include还是类似的工具。
如果您需要坚持使用直接HTML,您可以尝试使用AJAX或JavaScript进行操作 - 但随后您极度限制了网站的功能,导致严重的性能问题,并阻止禁用JavaScript的用户使用您的网站
第三个答案是使用某种预部署工具。这曾经是一个更大的市场,但我认为它现在大部分已经枯竭了。 Here's an example for using DreamWeaver来处理这个问题。
答案 3 :(得分:0)
如果您有支持PHP的PHP服务器,
<?php include 'header_inc.php'; ?>
如果那不可用
<!--#include virtual="header_inc.html" -->
但这是否有效取决于服务器
答案 4 :(得分:0)
如果您想在纯HTML中执行此操作,可以使用标记&lt; frame&gt;。但它非常非常ooooold风格:)
Framing technology
答案 5 :(得分:0)
如果您的服务器具有PHP功能
include 'header.inc.php';
您必须将标题代码放在名为的文件中,然后将该包含代码放在您希望标题显示在所有页面上