コードビハインドから CSS3 線形グラデーションの一部を変更する方法はありますか? 例えば:
Site.css で:
.MyClass{ background-image: linear-gradient(0deg, #FFFFFF, #000000); }
そしてマークアップで:
<div class="MyClass">Stuff</div>
私は(コードビハインドから)変更したい#000000
だけです。そして、そのdivのみ。
以下を使用できます。
<style>
.MyClass{ background-image: linear-gradient(0deg, #FFFFFF, <%=myVariable%>); }
</style>
マスター ページの HEAD 内。
この前に、スタイルシートをそのままにしておく必要があります (インライン スタイルシート)。これにより、ブラウザは引き続きメインの CSS ファイルをキャッシュできます。
スタイルはスタイル シートにあるため、新しいクラスを作成する必要があります。その後、コード ビハインドからその div のクラスを設定できます。
ページ:
<div id="_myClass" runat="server">Stuff</div>
コード
_myClass.Attributes["class"] = "MyNewClass";
別の方法として、新しいクラスを作成したくない場合は、コード ビハインドからオーバーライドできますが、グラデーション クロス ブラウザーに準拠させると面倒です。さらに、色を再度変更すると更新するのが面倒になります。 ...推奨されません:
_myClass.Attributes["style"] = "background-image: linear-gradient(0deg, #FFFFFF, #CCCCCC);";