【问题标题】:Links css file to a content page将 css 文件链接到内容页面
【发布时间】:2015-10-09 21:53:49
【问题描述】:

我有母版页和一些内容页。
我想为每个内容页面分配不同的 css 文件。

(不使用主题)
我该怎么做?

【问题讨论】:

    标签: asp.net


    【解决方案1】:

    我通过在母版页中添加标题占位符并在内容页中明确指定 css 来做到这一点。

    在大师中:

    <head runat="server">
        <title></title>
        <link href="~/css/common.css" rel="stylesheet" type="text/css" />
        <!-- loads of other stuff / -->
        <asp:ContentPlaceHolder ID="head" runat="server">
        </asp:ContentPlaceHolder>
    </head>
    

    在内容中:

    <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
            <link href="../css/SomeContent.css" rel="stylesheet" type="text/css" />
            <script src="../js/SomeJsToo.js" type="text/javascript"></script>
    </asp:Content>
    

    【讨论】:

    • “标题占位符”是什么意思?
    • 抱歉没有解释清楚。我添加了一个示例。
    【解决方案2】:

    如果您使用的是 Visual Studio 2008,那么您将度过一段非常轻松的时光。首先制作一个这样的母版页:

        <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <asp:ContentPlaceHolder id="head" runat="server">
        </asp:ContentPlaceHolder>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
    
            </asp:ContentPlaceHolder>
        </div>
        </form>
    </body>
    </html>
    

    现在根据这个母版页制作一个内容页:

        <asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    </asp:Content>
    

    现在,您只需在 Content1 占位符中放置您希望应用于该页面的样式表。

    就是这样。希望这对你有用。

    【讨论】:

      【解决方案3】:

      为所有页面使用外部主 CSS 文件:

      <link rel="stylesheet" type="text/css" href="master.css" />
      

      然后您可以使用样式标签在各个内容页面上使用嵌入式 CSS,例如:

      <style type="text/css">
      h1 {color:red}
      p {color:blue}
      </style>
      

      【讨论】:

        【解决方案4】:

        我已经尝试了上述许多方法,但仍然出现错误。最后我在页面加载时使用了以下代码,它工作正常:

            Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        
            Dim css1 As New HtmlLink
            css1.Href = ResolveUrl("report.css")
            css1.Attributes("rel") = "stylesheet"
            css1.Attributes("type") = "text/css"
            css1.Attributes("media") = "all"
            Me.Page.Header.Controls.Add(css1)
        
        End Sub
        

        【讨论】:

          猜你喜欢
          • 2015-03-28
          • 2023-03-15
          • 2019-11-11
          • 2014-05-27
          • 2011-09-28
          • 2013-04-21
          • 2021-11-21
          • 2011-04-23
          • 1970-01-01
          相关资源
          最近更新 更多