在我看来,我已将主页面包括如下:
<%@ Page Title=""
Language="C#" MasterPageFile="~/Views/Shared/Mall.Master"
Inherits="System.Web.Mvc.ViewPage<DomainModel.Entities.Seller>" %>
在我的Mall.master文件中,我添加了一个包含常规css文件的链接
<link rel="Stylesheet" href="../../Content/MallMaster.css" type="text/css" />
但是,我在视图中需要另一个更具体的css文件CheckOut.css。由于Checkout.css中定义的样式仅适用于一个页面,因此我不希望将该文件包含在母版页中。有没有办法在我的视图中包含该文件?
答案 0 :(得分:6)
您应该在MasterPage中添加一个新的content()占位符,然后在您的视图中,您可以向此占位符添加另一个css。
&lt; asp:ContentPlaceHolder ID =“head”runat =“server”&gt; &LT;标题&GT;&LT; /标题&GT; &lt; link rel =“样式表”href =“../../ Content / MallMaster.css”type =“text / css”/&gt; &LT; / ASP:的ContentPlaceHolder&GT;
这可能对您有所帮助 - How to pass page’s meta tags in ASP.NET MVC?
答案 1 :(得分:1)
如果您不想覆盖主广告中的现有广告代码,您也可以在<{1}}广告代码内添加内容占位符:
head
在你看来:
<head runat="server">
<title>
<asp:ContentPlaceHolder ID="title" runat="server">
Default Title</asp:ContentPlaceHolder>
</title>
<!-- The ContentPlaceHolder is placed inside the title tag to make sure that the
document validates in the VS editor - <title> needs to be a direct child of
<head>. The output will validate. -->
<script src="theAllFamous_jQuery.js" type="text/javascript" />
<link href="sitewide.css" type="text/css" rel="Stylesheet" />
<asp:ContentPlaceHolder ID="headContent" runat="server />
</head>
这样您就不必在网站上的所有头标记中复制所需的代码。