- 2007/05/07
- WEBデザイン

フォームのセレクタ <select></select> を使うとき、デザイン上、横幅を固定にしなくてはならず、その上、<option></option> の文字列が長すぎて固定の横幅に入りきらない場合の回避策。
は、結論から言えば見つからなかった。
とは言いつつも、Windows InternetExplorer以外であれば、選択して展開されるボックスが横に間延びして全てを表示してくれるので、ユーザビリティが損なわれているという1点に目をつぶれば問題はない。
それも嫌な場合は、FirefoxであればCSSで回避することもできる。
通常の各ブラウザ表示

Windows InternetExplorer7

Windows InternetExplorer6

Windows Firefox2

Windows Opera9

MacintoshOSX Safari2

MacintoshOSX Firefox1.5
InternetExplorer以外は選択したときに全文が表示されているのが分かる。このボックス自体も幅固定したい場合は、以下のようにCSSを指定してやると <option></option> 内で改行したように見せることができる。
CSSを使って、改行表示
select{
height:1.3em;
width:8em;
}
option{
width:8em;
white-space:normal;
}

Windows Firefox2
Firefoxでしか効果がないのが難点。
このような事態にならないように、事前のサイト設計をきっちりしようと自戒の念をこめてエントリ化。たぶん、文字列自体を削るのが一番いいんだろうなぁ。誰かスマートな解決方法を知っていたらご教授くださいませ。
- Newer: アドビ スゴロク - Adobe Creative Suite 3.0
- Older: 受刑者がプログラマーとして勉強・就職