CSSで条件によってボタンの文字色を変える方法

このQ&Aのポイント
  • CSSを使って条件によってボタンの文字色を変える方法について教えてください。
  • IEではボタンのEnableがTrueの時は黒色、Falseの時は灰色になりますが、chromeではどちらの場合でも文字色が黒になってしまいます。CSSを使ってボタンのEnableがFalseの時だけ、文字色を灰色にする方法を教えてください。ボタンひとつずつスタイルを設定しないといけないのか、もし簡単な方法があれば教えてください。
  • 急ぎではありませんが、回答をお願いいたします。
回答を見る
  • ベストアンサー

CSSで条件によってボタンの文字色を変えたい。

HTMLのスタイルシートでFormの文字色が変えれる事はわかっています。 style="background:red;color:white;" でいいんですよね。 そこで、CSSで条件によってボタンの文字色を変えたいのですが、どうすればいいでしょうか? なぜ、こんな事を考えるようになったかというと、 IE等では、ボタンのEnableがTrueの時は黒色(バックは普通)、Falseの時は灰色(バックは薄い)状態になるのですが、 この前、chromeでそのボタンを確認したところ、TrueでもFalseでも文字色が黒になっていました。 そこで、ボタンのEnableがFalseの時に、文字色を灰色に変えたいのですが、そんな事ってCSSを使ってでも出来るのでしょうか? もし出来ないとしたら、ボタンひとつずつスタイルを設定しないといけないという面倒な事になりそうなのです。 もし、CSSでボタンがEnable=falseの時だけ、ボタン色を灰色にする方法がわかる方がいらっしゃいましたら、回答してください。 急ぎませんので、回答よろしくお願いします。

  • HTML
  • 回答数3
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.3

??  javascriptか何かで、Enable=falseを指定しているなら、その時点でスタイルシートを書き出すしかない??  button要素にはenableという属性値はないので・・  form要素内の要素なら  button、input、optgroup、option、select、textareaについて、disabled属性があります。 <form action="[URL]" method="[post|get]">  <button disabled type = "submit" title="送信"> </form> でしたら、属性セレクタを使って  button[disable]{background:red;color:rgb(120,120,120);}

sara_seiji
質問者

お礼

すみません、disabledでしたね。 つい、Enable=falseって表現を使っていました。 <button>ではなく、<input type="submit">を使っています。 input[disabled]{color:#BBBBBB;} で試してみたところうまく動作しました。 ありがとうございます。

その他の回答 (2)

  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.2

behaviorか Javascriptで disabledかどうかを判定して .style.color= で変えればOKだったはず。 chromeでこれができたかどうかは chromeを入れていないのでわからないけど。

sara_seiji
質問者

お礼

Javascriptを使うとしたら、各ページに設定しないといけないですよね? そうすると、CSSのようにまとめて変換できないので、各ボタンに色変えをしても一緒ですね。 ということで、あきらめて、全部のEnable=falseのボタンにStyle="color:#BBBBBB;"を入れることにします…… IEでは、色を変えたところで無視されるので問題なくて、chrome対策なんですけどね…… 色が変わらないchromeは嫌いだぁ~

  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.1

IEでは、 Enable=false 時のボタンの色をいじることはできません。 行うとしたら ボタンのように見える画像や スタイルシートを駆使してボタンのように見えるテキストにするしかありません。

sara_seiji
質問者

お礼

IEでは、普通に灰色に変わっているので、色が変わらなくても問題ありません。 chromeの時に、色を変えたいのですが、Enable=falseの時だけ色を変える方法って無いでしょうか?

関連するQ&A

  • CSS を使わずにメニューボタンの文字色を変える

    スタイルシートが使えませんので、html だけでメニューボタンに変化をつけたいのです。 クリックした時にボタンの色を変えることは出来たのですが、マウスポインタがボタンに乗った時点でメニューの文字色やボタンの色を変えることは出来ますか? 「オンスクリーン、オフスクリーンのタグ文で簡単に出来る」と友達がおしえてくれたのですが、意味がわかりません。 どなたかわかる方、おしえてください。 よろしくお願いします。

    • ベストアンサー
    • HTML
  • CSSの文字色指定

    CSS検証サイトで警告が出てビックリしました。 background : buttonhighlight; の部分です。 解説は: 色の名前に大文字/小文字の区別はありませんが、名前をより区別しやすくするため、大文字を混ぜて使う事が推奨されます: って事でした・・・ background : ButtonHighlight; が正しいそうですが、 どちらでも良いような気もしますし 他のサイトで調べてみましたが答えが出ません。 色名等は、頭文字を大文字にすべきなのでしょうか???

    • ベストアンサー
    • HTML
  • cssで文字背景を透明化できますか?

    cssで文字背景を透明化できますか? 文字の背景にbackground-colorで色をつけ、その色を透けて見せたいのですが、 わかりません・・。 「-moz-opacity:50;」とか「filter:alpha(opacity=50);」などで色の透明効果を 出せるとありましたが、ソースをどう記述すればいいのかわかりません。 よろしくお願いしますm(_ _)m

  • css(スタイルシート)について

    最近スタイルシートを勉強しているものです。 外部スタイルシートにて body { margin: 0; padding: 0; background-image:url(img/back.jpg); background-repeat:repeat-y; background-position: center; background-color:#333333; } という記述で、背景の設定をしました。 プレビューイメージは背景=黒 中央=白といったイメージです。 中央=白の位置にテキスト文字を入れたいのですが、マージンもしくはパディング設定をしてしまうと ウィンドウのサイズによって背景と文字がずれてしまいます。 テキストの文章もcssで設定したい場合 どのように設定するのがよろしいでしょうか? よろしくお願いします。

    • 締切済み
    • CSS
  • ExcelVBA EnableプロパティがFalseの時に文字の色を変えたくない

    ユーザーフォーム上のテキストボックスの内容を変えたくないときにEnableプロパティをFalseにすると、文字の色が灰色に変わってしまいますよね。 色を変えたくないので防ぐ方法はないでしょうか。 また、文字を変更させない方法で、ほかによい方法はないでしょうか。

  • 【CSS】文字を選択した時のように反転したい

    マウスや、シフト+矢印で文字を選択すると、選択された文字が反転します(私が使っているブラウザですと、白地に黒の文字だと青背景の白字で反転されます)が、このような表現をCSSで実現するにはどうしたらよいでしょうか?(選択しない状態で選択されたような色にしたい) colorに白とbackground-colorに青を指定しても出来そうですが、 ブラウザによっても反転時の色って違うような気がするので、汎用的に記述できれば良いなあと考えております。

    • ベストアンサー
    • HTML
  • HPの文字の大きさを変えるCSSがうまくいきません

    ネット上によく出ているjsやcssを利用した文字サイズを変える方法を、ソースを取り込んでみるのですががうまくできません。 初心者なので、かわかり易く教えていただると助かります。 尚、styleswitcher.jsはダウンロード済です。 ソースは、 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <meta http-equiv="Content-Style-Type" content="text/css"> <link rel="stylesheet" type="text/css" href="style1.css" title="style1"> <link rel="alternate stylesheet" type="text/css" href="style2.css" title="style2"> <link rel="alternate stylesheet" type="text/css" href="style3.css" title="style3"> <script type="text/javascript" src="styleswitcher.js"></script> <style type="text/css"> style1.css body {font-size: 100%;} style2.css body {font-size: 80%;} style3.css body {font-size: 120%;} </style> <title></title> </head> <body> <a href="javascript:;" onclick="javascript:setActiveStyleSheet('style2'); return false;">サイズ小</a> <a href="javascript:;" onclick="javascript:setActiveStyleSheet('style1'); return false;">サイズ中</a> <a href="javascript:;" onclick="javascript:setActiveStyleSheet('style3'); return false;">サイズ大</a> <br> <br> テスト<br> </body> </html> よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • 文字を拡大したら文字を元の色に戻せない(gooブログ)

    文字に最初から色がついているテンプレートを使っています。例えば、淡いブルーとか、灰色とか色変更で変更できない色。 文字の大きさを変更したら、その変更した文字は好きな色が選べますよね?赤とか黒とか。 で、文字の大きさを元に戻すと、そのテンプレート特有の色には戻らないんです。 例えばバックが黒色のテンプレートは、最初は文字が白いですよね? そして、強調する為に文字を赤色にして大きくして、そして普通の文に戻そうと文字のサイズを元に戻すと、その時から文字が黒くなり、全く文字が見えなくなるという事です。色を変えても変になるし。白で続けたい!と言う時はどうすれば良いんでしょうか? 説明ベタで上手く伝わってるかどうか心配ですが、回答よろしくお願いします!

  • 文字が消える?

    こんにちは。 ドリームウィーバーで会社のHPを変更するように言われて、編集しているのですが、確認のためIEで見ると最初は普通に文字が出てますが、他のもの(何でも構わないです。メールソフトやDWでも)見た後にそのIEを見るとあった文字が消えてるのです。 正確には白い文字のようでドラッグすると元に戻り灰色の文字が出てきますが、再び他の作業をするとまた消えて見えなくなってしまいます。 (CSSで灰色文字、バックグランドにアイコン画像を入れてますが、このアイコン画像も消えてしまいます) 何が原因なのでしょうか? 考えられることがあれば、何でも構いません。教えてください!

  • 閲覧時に背景色、文字色をcssで変更したい

    WindowsXP、Firefox3を使用しています。 白背景に黒文字という一般的なウェブページの配色はまぶしいので、 Stylishというアドオンを使ってcssで背景色、文字色を変更しようと思い、 以下のようなcssを作成しました。 ------------------------ここから body { color: #696969 !important; background-color: #dcdcdc !important; background-image:none !important; } td { color: #343434 !important; background-color: #d3d3d3 !important; background-image:none !important; } ------------------------ここまで しかし、これだと色が変更できない領域があります。 例えば、 http://www.yahoo.co.jp/  ……一番下?の背景色しか変わりません http://www.4gamer.net/   ……一切変化しません http://www.flay.com/    ……背景色は変わりますが、文字色が変わりません アドオンを使わず、userContent.cssを使う方法にしても結果は同じようです。 どのウェブページでも背景色と文字色を変更するには、どう記述すればよいのでしょうか?