入力フォームの表示サイズを指定したサイズにするには?

[上に] [前に] [次に]
poyopoyo 1999/07/06(火) 17:55:59
poyopoyoといいます。
初歩的な質問かもしれませんが、教えてください。

テキストの入力フォームで、下記のようにsizeを20とし、
初期値に半角数字20桁を指定しています。
これを、I.E.4.0で表示すると、表示枠には
17桁しか表示されなくて、残りはスクロールしてしまいます。
スクロールをしないで、20桁全部を表示させるには、
どうすればいいのでしょうか?

<INPUT type="text" value="12345678901234567890" name="test" size="20" maxlength="20">

Aurai [E-Mail] 1999/07/07(水) 00:10:14
sizeにもっと大きい値を指定するしかないんじゃないですか

無責任官庁 1999/07/07(水) 09:29:19
これって単にフォントの問題のような気がします。
ま、ブラウザがアホってのもあるけど。(^_^;)
試した所NN3やIE5でもそうなんですけど、
フォントごとに表示できる桁数が異なるようです。
何を基準にしてるかは、私は知りませんが。
ちなみにこれをNN3で表示すると、15桁しか表示しません。

なおNC4.6では、指定通りキッカリ表示してくれるようです。エライ♪
(っていうか、当たり前のコトのような・・・)

あ、これは私の所のWindows環境での話しですので。

#−−−余談−−−
#IE4だと“表示”→“フォント”の所で・・・
#“アラビア語”とか選択すると、20文字キッカリ表示。
#“ギリシャ語”とか選択すると、1〜2文字切れる。
#“Unicode”とか選択すると、21文字表示。
#ってな具合(^-^;

なので、Auraiさんの言うように余裕を持ってサイズ指定する以外、
無いと思います。

#STYLEとかでフォント指定するとドツボにはまる・・・かな(^-^;

seea [E-Mail] 1999/07/07(水) 16:25:54
グローバルスタイルシートとして
INPUT { font-family: 'MS ゴシック',sans-serif; }
を指定します。

大抵の場合、これで解決します。
MSIE 4.x/5.x の挙動を、Mozilla 4.x に合わせるという仕掛けです。
(Mac-OS のときの動作が不明です。ごめんなさい…)

MSIE 3.x、Mozilla 3.x のユーザ数は少ないので、最新のブラウザを
前提にするならば、それほど考慮することもないといえます。
(考慮したいのなら、このような小手先の技は止めたほうが良いです)


それから、HTTP_USER_AGENT で Web ブラウザの種類を見分けて
アクセスの度に適切な size 属性を送り出すという、まさに天然記念物の
ような掲示板 Perl スクリプトも実在します。(しかも有名どころ!)
こういうのは、*天然記念物* だからこそ面白いのであり、
小手先のテクニックとしては、あまり奨められるものではありません。

・・こんなんで どうでしょ〜 おきゃくさ〜ん!?

poyopoyo 1999/07/08(木) 14:09:20
みなさん、レスありがとうございます。

TO: Auraiさん
>sizeにもっと大きい値を指定するしかないんじゃないですか

このsizeはmaxlengthと同じである必要はないんですか?
問題なければ、sizeを変更すれば、見た目には問題解決なんですが・・・。

TO: 無責任官庁さん
>#“アラビア語”とか選択すると、20文字キッカリ表示。

うーん、日本語でみてもらうページなので、それはちょっと・・。

TO: seea さん
スタイルシートは今は使う予定ではないので、今後の課題としておきます。

たこすけ 1999/07/08(木) 14:37:25
IE4以上だと、ページ描画後でも
<INPUT TYPE=text>のSIZEが変更できるので
<BODY onLoad="document.formname.test.size=26">
などと書けば、とりあえずのその場しのぎにはなるかも・・・(自信なし)

[上に] [前に] [次に]