2017-06-30 14 views
0

Visual Studio 2015でASP.NetのフロントエンドでC#を使用しています。私はこのコードを実行するとチェックボックスのテキストの色を変更する別の方法

<asp:CheckBox ID="chkMedical" runat="server" Text="Medical" ForeColor="White" 
       Font-Size="X-Small" Visible="False" /> 

は、テキスト「医療」は黒です:

私はこのコード行を持っています。

なぜ白ではありませんか?テキストの色を変更する別の方法はありますか?

+0

ブラウザのインス​​ペクタを使用してCSSクラスが設定を上書きしているか、JavaScriptの色を変更している可能性がありますか?ところで、あなたはVisible = "False"を持っています。これはどんな色でも見えますか?もう一度、いくつかのjavascript? –

+0

^this。私はちょうどあなたのコードをテストし、うまく動作します(真のobvに見えるように変更)。かなりあなたの色をオーバーライドする一般的なCSSクラス、またはそれを変更するいくつかのJavaScriptコードがあることを確かめてください。 –

+0

可視性は、バックエンド(C#)の特定の基準に基づいて変更されます。しかし、私は検査官をチェックし、それが私を何かに導くかどうかを調べるつもりです。 –

答えて

0

色はCSSで設定し、C#コンテンツの生成では設定しないでください。あなたは技術的にあなたのコードを使用することができます、それは動作するはずですが、何かがインラインCSSの色をオーバーライドするかもしれません。以下のようなあなたの要素にのCssClassを追加してみてください:

<asp:CheckBox ID="chkMedical" CssClass="chkMedical" runat="server" Text="Medical" ForeColor="White" 
      Font-Size="X-Small" Visible="False" /> 

その後のような自分のページにいくつかのCSSを追加します。

<style>.chkMedical { color: #FFF !important; } </style> 

おそらく、文書の先頭にタグを追加し、あるいは少なくとも必要があります.aspxページの上または下を新しい、あなたの選択。もちろん、ドキュメントで参照されているCSSファイルにこれを追加することもできます。

クラスの代わりに要素IDを使用できますが、ASP.NETでは通常、ページの非静的ASPコントロールにContentPlaceHolderIDが追加されます。したがって、ContentPlaceHolderIDが "ContentPlaceHolder1"であると仮定すると、以下のコードも動作します。 ContentPlaceHolderが変更されるか、誰かがあなたのASPコントロールを静的に変更する可能性があるので(要素IDが変わるため)、潜在的な頭痛(個人的な経験)を避けるためにクラスの使用をお勧めします。

<style>#ContentPlaceHolder1_chkMedical { color: #FFF !important; } </style> 
+0

OP - まだ問題はありますか?これで問題を解決できましたか? –

関連する問題