2

ASP.NET Web アプリケーションの実行時に使用されている CSS ファイルを変更したいと考えています。

2 つの CSS ファイルがred.cssあり、blue.css.

私は次のアプローチを試しました:

私のマスターページには、次のリンクがあります。

<link rel="Stylesheet" ID="Styles" runat="server"/>

マスター ページ Page_Load で:

Styles.Href = Global.CSSPath;

Global.asax:

public static string CSSPath = "red.css";(同じフォルダにあると仮定して)

このアプローチは機能します。もちろん、CSSPath の値を変更して blue.css などにする機能を簡単に実装することもできます。今度は、これが Web アプリケーションを使用している 1 人のユーザーだけに影響するのか、それとも全員に影響するのかを知りたいと思います。

影響を受けるユーザーが 1 人だけの場合: ありがとうございます。そうでない場合: 特定のユーザー/セッションの実行時にテーマを変更できるようにするにはどうすればよいですか?

ありがとう、

デニス

4

2 に答える 2

3

このようなものをあなたに追加してみてくださいhtml

    <script runat="server">

    protected void Page_Init(object sender, EventArgs e)
    {   
      HtmlLink csslink = new HtmlLink();
      csslink.Href = "~/red.css";
      csslink.Attributes.Add("rel", "stylesheet");
      csslink.Attributes.Add("type", "text/css");
      Page.Header.Controls.Add(csslink);    
    }
   </script>
于 2011-10-21T11:26:07.870 に答える
3

静的 (グローバル) 変数から値を読み取っているため、すべてのユーザーに影響します。

実行時にテーマを変更するには、現在のようにサーバー側で行うことができますが、おそらくセッションからユーザー固有の値を取得する必要があります。

于 2011-10-21T11:44:24.103 に答える