为现有网站创建母版页的指南
Posted
技术标签:
【中文标题】为现有网站创建母版页的指南【英文标题】:Guideline to Create Master Pages for Existing Website 【发布时间】:2011-12-12 17:23:27 【问题描述】:我从来没有弄乱母版页,我想迁移我现有的一些网站,这样我就可以停止尝试维护标题、菜单等的所有重复编码。
我从这个介绍开始:ASP.NET 2.0 Master Pages - 它非常好,但没有回答我的详细信息。
我可以(如果可以的话我会怎么做)
母版页<head><title>
标签? (以防我忘记给文档命名)
META
标签的母版页?毕竟,大部分信息都是多余的。
...我可以在META
标签中添加额外内容,还是“全有或全无”之类的东西? (比如覆盖 ToString() 并返回 base.ToString() + " my own flavor."
。
母版页CSS Stylesheet
页面和javascript
源代码?
如果有帮助,我会在 Windows 7 中使用 Notepad.exe
进行编码,因为我不喜欢大多数工具(尤其是 Microsoft 的工具)尝试为我“自动格式化”我的文本。
也许这些主题都是基础知识,但我在网上找到的教程或此处的信息中并不容易看到它们得到解答。
有人能给我指出一个关于如何在 母版页 中做不同事情的好参考吗?
【问题讨论】:
【参考方案1】:您可以使用母版页完成所有这些操作。只需将它们放在您的 .master 文件中,类似于:
<%@ Master Language="C#" AutoEventWireup="True" CodeBehind="YourPage.Master.cs" Inherits="MasterPages.YourMasterPage" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Your Title</title>
<link rel="stylesheet" href="~/YourStyles.css" />
<asp:ContentPlaceHolder ID="headContentPlaceHolder" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<div>
<form id="form1" runat="server">
<asp:ContentPlaceHolder ID="bodyContentPlaceHolder" runat="server">
</asp:ContentPlaceHolder>
</div>
</form>
</body>
</html>
仅供参考:如果您感到困扰,您可以在 Visual Studio 中关闭自动格式化。使用 Visual Studio 虽然并不完美,但如果您学会了如何使用它,它将帮助您避免简单的拼写错误(通过 Intellisense)并通常加快您的开发速度。我建议至少使用某种 IDE。如果不是 Visual Studio,那么可能是 MonoDevelop。
【讨论】:
+1 - 那么,我可以输入<asp:ContentPlaceHolder ID="metaDescription" runat="server"><meta name="Keywords" content="jp2code" /></asp:ContentPlaceHolder>
吗?如果是这样,我假设要替换它,我只需调用派生页面中的控件并覆盖内容。这是正确的吗?
在您的内容页面中,您的每个占位符都有一个 <asp:Content>
标记,您在其间放置的任何内容都将放置在呈现页面中该占位符的位置。以上是关于为现有网站创建母版页的指南的主要内容,如果未能解决你的问题,请参考以下文章