option
原則として、他の要素と同じように要素のスタイルを設定できます。実際には、特に古いブラウザでは制限があり、奇妙な点があります。最新のブラウザでは、テストだけでわかるように、カラーリングはある意味で機能します。
<select>
<option style="background: red">option
<option style="background: green">other option
</select>
オプションに焦点を当てるとそのレンダリングが変わるため、色が思い通りに機能しません。さらに、任意の色、またはさまざまな色が表示される場合、十分なコントラストを作成するためにテキストの色として何を使用しますか?
したがって、より良いアプローチは、一連のチェックボックスまたはラジオ ボタン (選択のタイプに応じて) を使用し、カラー ボックスを色のサンプルとして関連付けることです。
<style>
.colorbox {
display: inline-block;
width: 1em;
height: 1em;
border: solid 1px black;
}
</style>
<fieldset>
<input type=radio name=color value="#FFEBCD" id=FFEBCD>
<label for=FFEBCD><span class=colorbox style="background: #FFEBCD">
</span>blanche dalmond</label><br>
<input type=radio name=color value="#FFFFFF" id=FFFFFF>
<label for=FFFFFF><span class=colorbox style="background: #FFFFFF">
</span>white</label>
</fieldset>
さらに別の可能性として、すべてのユーザーが最新のブラウザーを使用しているという贅沢なケースでは、HTML5 の方法を使用することもできます。
<input type=color name=color list=colors>
<datalist id=colors>
<option value="#FFEBCD" label="blanche dalmond">
<option value="#FFFFFF" label="white">
</datalist>
ただし、これはサポートされていないブラウザーでは機能が低下します。単純なテキスト入力ボックスになり、ユーザーは #FFEBCD のような 16 進コードを入力する必要があることを知るか推測する必要があります。