2011-08-09 9 views
1

私は、このコードは、我々は今、このマスターページ内のリンクとのContentPlaceHolderとDefault.aspxページ

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

のようにそのコンテンツのdivを持っているマスターページにしてDefault.aspxページに

<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に新しいスタイルシートCSSファイルを追加したいと思います。このリンクのhrefに私は(使用〜サイン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> 

相対URLを与えるだろうが、それは実行時には、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" /> 

この2番目のリンクid = "Link1"を解決するには、最初のid = "Link2"のようにします。 私はlink1 hrefをlink2のような絶対パスに変換します。 しかし、どうですか?

答えて

0

あなたは...このような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); 
} 

をスタイルシートを追加することができ、私はそれがあなたの要件ごとに作品を願って...

0

javascriptファイルを手動でリンクしようとしたときに同じ問題が発生しました。 default.aspxをして次のことを試してみてください。追記として

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

あなたは上記の例、XHTMLのDOCTYPEを使用している場合は、あなただけの「/ >」で、このタグを終了し、HTMLのためです。

関連する問題