簡體   English   中英

在母版頁和default.aspx頁中具有鏈接的ContentPlaceHolder

[英]ContentPlaceHolder with link in master page and default.aspx page

我在用

<head runat="server">
    <title></title>
    <link id="Link2" href="~/App_Shared/CSS/AjaxStyle.css" rel="stylesheet" type="text/css"
    runat="server" />
    <asp:ContentPlaceHolder ID="cphHead" runat="server">
    </asp:ContentPlaceHolder>
</head>

此代碼在母版頁和default.aspx頁中,其內容div如下所示

<asp:Content ID="Content1" ContentPlaceHolderID="cphHead" runat="server">
</asp:Content>

現在,我想在default.aspx頁面(如母版頁)的此內容div中添加新的樣式表css文件。 並在此鏈接中,href我將給出相對URL(使用〜符號URL)

<asp:Content ID="Content1" ContentPlaceHolderID="cphHead" runat="server">
    <link id="Link1" href="~/App_Shared/CSS/DefaultStyle.css" rel="stylesheet" type="text/css"
    runat="server" />
</asp:Content>

但是當它運行時,它會在HTML頁面源代碼上顯示我

<link id="Link2" href="../App_Shared/CSS/AjaxStyle.css" rel="stylesheet" type="text/css" />

<link id="Link1" href="~/App_Shared/CSS/DefaultStyle.css" rel="stylesheet" type="text/css" />

如何像第一個id =“ Link2”一樣解析第二個鏈接id =“ Link1”。 我想將link1 href轉換為像link2這樣的絕對路徑...但是如何????

嘗試手動鏈接javascript文件時遇到了相同的問題。 在default.aspx中嘗試以下操作:

<link href="<%= ResolveUrl("~") %>App_Shared/CSS/DefaultStyle.css" type="text/css" rel="stylesheet">

作為旁注,如果您使用的是xhtml doctype,則僅以“ />”結尾該標簽,以上示例適用於html。

您可以使用這樣的C#代碼添加樣式表...

protected void Page_Init(object sender, EventArgs e)
{
        HtmlLink css = new HtmlLink();
        css.Href = "css/fancyforms.css";
        css.Attributes["rel"] = "stylesheet";
        css.Attributes["type"] = "text/css";
        css.Attributes["media"] = "all";
        Page.Header.Controls.Add(css);
}

我希望它能按照您的要求...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM