LoginSignup
15
15

More than 1 year has passed since last update.

IE以外のブラウザでドロップダウンリストの各項目に色を付けたいとき

Last updated at Posted at 2013-09-06

【2021/10/15 追記】
この記事は更新が停止されています。現在では筆者の思想が変化している面もありますので,過去の記事として参考程度にご覧ください。

<select name="color">
<option style="color:black;" selected>選択してください</option>
<option style="color:red;"></option>
<option style="color:yellow;"></option>
<option style="color:blue;"></option>
</select>

InternetExplolerは選択後のselect要素自体の色も自動的に変更してくれるようですが、FirefoxやGoogleChromeではselect要素を直接操作しない限りデフォルト色のままになってしまうようです。
これを解決するためにJavaScriptド素人の私なりに思いついたのが以下のコードです。
既出だったら申し訳ないというか多分既出だと思いますが。

function changeColor() {
    var e = document.getElementById("color");
    e.style.color = e.options[e.selectedIndex].style.color;
}
<select name="color" id="color" onchange="changeColor()">
<option style="color:black;" selected>選択してください</option>
<option style="color:red;"></option>
<option style="color:yellow;"></option>
<option style="color:blue;"></option>
</select>

とりあえずGoogleChromeではこれで動作確認できました。
「こうしたほうがいい」等指摘があれば生暖かいコメントお願いします(((

15
15
19

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
15