【问题标题】:What to use instead of frames in HTML在 HTML 中使用什么来代替框架
【发布时间】:2010-12-23 10:23:23
【问题描述】:

我需要用 HTML 建立一个网站。我需要每个页面的顶部看起来都一样(我通常使用 ASP.NET 母版页)。有什么办法可以让我在每个页面顶部没有相同代码的情况下使用相同的标题和导航?

该网站需要对 SEO 友好,所以我宁愿不使用框架。

谢谢。

【问题讨论】:

  • 在每个页面的顶部使用相同的 HTML 有什么问题?尤其是在 ASP.NET 中,使用 Master Pages 的实现非常容易。
  • 这将在什么环境下运行? (您说您通常使用 ASP.NET,这可能意味着这不是 ASP.NET,或者?)
  • 我希望它是纯 HTML,不涉及 ASP.net 或 ASP
  • @Steven - 如果是这种情况,您只需在 every 文件中手动包含相同的页眉、页脚等内容。但是,我真的不推荐这种方法。
  • 您对将 HTML 作为字符串存储在 javascript 变量中,然后将其泵入相应位置的每个页面的主体中有何想法。

标签: javascript html css frames


【解决方案1】:

有没有办法让我不必在每个页面的顶部都使用相同的代码,而不必使用相同的标题和导航。

并非没有与使用框架相同或相似的缺点。

如果您想要一个不依赖于服务器端支持的模板机制,请查看Template-Toolkit。它有一个名为 ttree 的实用程序,它将从您的数据和模板构建一组静态文件,然后您可以将其上传到没有 SSI、PHP、Masterpages 等任何内容的主机。

【讨论】:

    【解决方案2】:

    您可以在部署之前对网站进行“编译”。因此,您可以将页面编写为包含标头的 PHP 脚本,然后通过运行脚本并部署它们的输出来“编译”它们。

    【讨论】:

      【解决方案3】:

      我不是 HTML 专家,但是,我确信可以创建一个可以停靠在页面顶部的浮动层(使用 <DIV><SPAN> 部分)

      【讨论】:

        【解决方案4】:

        大多数网站都是使用某种描述的网络框架构建的。这些本质上允许您为站点页面定义模板 - 例如,您可以定义框架将在渲染时(请求页面时)插入到您的页面中的页眉、页脚、菜单等。然而,这样的页面是“动态的”,因此需要脚本环境,例如 perl、python、ruby、php 才能生成请求的页面。这些语言有很多可用的框架;或者,如果您正在构建一个超级简单的网站,您可以设置自己的模板并使用它们。

        但是,如果您仅限于纯 HTML,即静态页面,那么是的,如果您想避免框架,您将不得不手动将通用 HTML 添加到每个页面。

        【讨论】:

          【解决方案5】:

          作为一种通用方法,您通常会将页眉(实际上还有页脚、其他常见页面部分等)存储在单独的文件中,并将这些文件包含在每个页面中。根据平台的功能,您甚至可以使这些文件变得智能,因为它们可以根据“当前” URL 改变自己。

          通过使用这种方法,您只需在一个文件中编辑“标题”等,而不必在整个站点中搜索和替换,或者(更糟糕的是)手动执行更改每一页。

          但是,如果不知道您使用的是什么平台(ASP.NET/MVC、PHP、JSP 等),就不可能推荐任何具体的东西。

          【讨论】:

            【解决方案6】:

            您可以使用服务器端包含并将页面分为页眉页、侧导航页和页脚页。

            然后您可以将这些作为服务器端包含在您的每个页面中。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2020-05-15
              • 2011-10-02
              • 2011-10-12
              • 1970-01-01
              • 2018-11-24
              • 2023-03-30
              相关资源
              最近更新 更多