ASP.NET MVC - 样式和布局

为了学习 ASP.NET MVC,我们将构建一个 Internet 应用程序。

部分 3:添加样式和统一的外观(布局)。

添加布局

文件 _Layout.cshtml 表示应用程序中每个页面的布局。它位于 Views 文件夹中的 Shared 文件夹。

打开这个文件,把其内容替换为:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title</title>
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")"></script>
<script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")"></script>
</head>
<body>
<ul id="menu">
<li>@Html.ActionLink("Home", "Index", "Home")</li>
<li>@Html.ActionLink("Movies", "Index", "Movies")</li>
<li>@Html.ActionLink("About", "About", "Home")</li>
</ul> 
<section id="main">
@RenderBody()
<p>Copyright World Wide Webs 2012. All Rights Reserved.</p>
</section>
</body>
</html>

HTML 帮助器

在上面的代码中,HTML 帮助器用于修改 HTML 输出:

@Url.Content() - URL 内容在此处插入。

@Html.ActionLink() - HTML 链接在此处插入。

我们将在本教程稍后的章节讲解 HTML 帮助器。

Razor 语法

在上面的代码中,由红色标记的代码是使用 Razor 标记的 C#。

@ViewBag.Title - 在此处插入页面标题。

@RenderBody() - 此处呈现页面内容。

您可以在我们的 Razor 教程中学习 C# 和 VB (Visual Basic) 编写的 Razor 标记。

添加样式

应用程序的样式表是 Site.css。它位于 Content 文件夹中。

打开文件 Site.css,并把其内容替换为:

body
{
font: "Trebuchet MS", Verdana, sans-serif;
background-color: #5c87b2;
color: #696969;
}

h1
{
border-bottom: 3px solid #cc9900;
font: Georgia, serif;
color: #996600;
}

#main
{
padding: 20px;
background-color: #ffffff;
border-radius: 0 4px 4px 4px;
}

a
{
color: #034af3; 
}

/* 菜单样式 ------------------------------*/
ul#menu
{
padding: 0px;
position: relative;
margin: 0;
}

ul#menu li
{
display: inline;
}

ul#menu li a 
{
background-color: #e8eef4;
padding: 10px 20px;
text-decoration: none;
line-height: 2.8em;
/*CSS3 properties*/
border-radius: 4px 4px 0 0;
}

ul#menu li a:hover
{
background-color: #ffffff;
} 

/* 表单样式 ------------------------------*/
fieldset
{
padding-left: 12px;
} 

fieldset label
{
display: block;
padding: 4px;
}

input[type="text"], input[type="password"]
{
width: 300px;
}

input[type="submit"]
{
padding: 4px;
}

/* 数据样式 ------------------------------*/
table.data
{
background-color:#ffffff;
border:1px solid #c3c3c3;
border-collapse:collapse;
width:100%;
}

table.data th
{
background-color:#e8eef4;
border:1px solid #c3c3c3;
padding:3px;
}

table.data td 
{
border:1px solid #c3c3c3;
padding:3px;
}

_ViewStart 文件

Shared 文件夹(位于 Views 文件夹内)中的 _ViewStart 文件包含以下内容:

@{Layout = "~/Views/Shared/_Layout.cshtml";}

这段代码被自动添加到由应用程序显示的所有视图。

如果删除该文件,则必须向所有视图添加这段代码。

您将在本教程稍后的章节学到更多有关视图的知识。