【问题标题】:Dynamically add Css asp.net page [closed]动态添加 Css asp.net 页面 [关闭]
【发布时间】:2019-03-03 22:55:25
【问题描述】:

我有 3 个具有相同类名“BkImg”的 css 文件(File.css、File2.css、File3.css),它会更改页面的背景图像,并且根据我的代码隐藏页面中的某些条件,我想链接一个这些文件。 在我的aspx body标签()中。

我使用 C# 作为语言背后的代码

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    首先为body标签添加'id'和'runat'属性。

    <body id="mybody" runat="server">
    

    然后您可以使用 page_load 事件或其他事件动态添加您的 cals。

    protected void Page_Load(object sender, EventArgs e)
    {
    
       mybody.Attributes.Add("class", "classname();");
    
    }
    

    【讨论】:

      【解决方案2】:

      类似于this question.

      对该问题的答案的改编..

      您可以在代码隐藏文件中使用 Page_Init 函数来动态生成链接并将其添加到您的页面标题(或正文,在您的情况下)。下面是 C# 中该函数的一个示例。当然,您会实现您的逻辑来更改 Href 值。

      protected void Page_Init(object sender, EventArgs e)
      {
          var link = new HtmlLink();
          link.Href = "~/styles/main.css";
          link.Attributes.Add("rel", "stylesheet");
          link.Attributes.Add("type", "text/css");
          Page.Body.Controls.Add(link);
      }
      

      确保在正文标记中放置runat="server",以便您可以从代码隐藏文件中引用正文。

      <body runat="server">
      </body>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-07-27
        • 1970-01-01
        • 1970-01-01
        • 2011-06-18
        • 1970-01-01
        • 2023-03-21
        • 2014-01-29
        相关资源
        最近更新 更多