auでselectボックス(プルダウン)が2行になる現象

by sakaki0214[Mobile]
2009-11-17 23:50:00
[ページ移動: 1 2]

恐らく、auの古めの機種でしか発生しないとは思うのですがたまたま遭遇してしまったため書き残しておきます。 というか、今までこんな現象知らなかったので...今まで私が制作したサイトはことごとく2g(ry

...。

xhtml、htmlどちらでも同じ現象が発生します。

<画像:一般的なでの見え方>

他のキャリアで見るとなんの問題もない普通のプルダウンなんですが。

auの古めな機種(A5511T、W41CAで検証)で見ると、

<画像:au(古い端末)での見え方>

という感じで2行になります。

ちなみに、auの最近の端末で見るとプルダウンの部分だけ他よりもフォントが大きく見えてしまいます。

<画像:一般的なでの見え方>

サンプルページ
<画像:QRコード>
サンプルページを見る

原因は?

selectの外側で小さめの文字サイズを指定すると、selectボックスの中身のテキストはデフォルトのサイズのままだけど、ボックスのみが小さめの文字サイズにあわせて小さくなります。

要するに、「中身は大きいままなのに外側のボックスは小さくなってしまう」ということです。

auの最近の機種で確認すると、プルダウンの選択肢の部分だけ他よりちょっと大きく見えます。古い端末のように2行になってしまうことはないんですが、文字サイズ指定がselectには効いていないようです。

フォントを1とかx-smallといった小さいサイズをページ全体に指定している場合は、
・auの古い端末でプルダウン内のテキストが2行になってしまう
・auの最近の端末でプルダウン内のテキストが他より大きくなってしまう
という現象を防ぐため、optionの内側で文字サイズの指定をしてあげるとよいです(面倒ですけどね)。

今回はauだけ調整すればよいので、内部スタイルシートで記述しています(外部でももちろんOKです)。

<style type="text/css">
<![CDATA[
.fontS {font-size:x-small;}
]]>
</style>
・
・
・
<select name="xx">
<option value="1"><span class="fontS">20歳〜40歳</span></option>
<option value="2"><span class="fontS">40歳〜60歳</span></option>
<option value="3"><span class="fontS">60歳〜80歳</span></option>
</select>

htmlの場合はoptionの内側にfont size="数字"を指定する必要があります。

<select name="xx">
<option value="1"><font size="1">20歳〜40歳</font></option>
<option value="2"><font size="1">40歳〜60歳</font></option>
<option value="3"><font size="1">60歳〜80歳</font></option>
</select>

サンプルページ
<画像:QRコード>
サンプルページを見る

tableの各セルの内側で文字サイズを指定しなおすのと似たような感覚ですね。

ついでにdocomo、softbankの挙動も確認してみる

docomoとsoftbankはoptionタグの内側の文字サイズ指定が効かないです。

docomoの場合は、selectタグの外側の文字サイズがそのままプルダウン内の文字サイズに反映されているようですが、softbankの場合はどの文字サイズ指定も影響しない...どう文字サイズを変更してもプルダウン内の文字サイズを変更することができませんでした。

混乱してきたのでまとめると?

docomo
...selectタグの外側の文字サイズがプルダウン内(optionタグ)の文字サイズに影響

au(古め)
...optionタグの内側に文字サイズ指定をしないと改行される恐れあり(ページ全体の文字サイズが小さい場合)
au(新しめ)
...optionタグの内側の文字サイズ指定が有効

softbank

[ページ移動: 1 2]

[*]前の記事 | [#]次の記事
TOP

コメント(3)

Powered by MT4i 3.0.8X1
携帯アクセス解析