もちろん、標準の html テキスト ボックスを使用できますが、何らかの理由でテキスト領域が必要です。
では、テキストエリアの複数行オプションを無効にすることは可能ですか?
cols
および属性を使用してテキストエリアのサイズを設定しrows
、CSS でサイズ変更不可にすることはできますが、ユーザーが複数の行を追加するのを防ぐことはできません。領域が小さすぎる場合でも、スクロールバーが表示され、好きなだけ行を書くことができます.
本当に 1 行だけを取得する必要がある場合は、rows
属性を 1 に設定し、入力に Javascript を使用した単一行があるかどうかを確認することをお勧めします。
HTMLで:
<textarea name="a" cols="5" rows="1" ></textarea>
CSS で:
textarea{
resize: none;
#You can use resize: horizontal if you just want to disable vertical resize
}
それでも、<input type="text" ... />
なぜそれを避けたいのですか?
rows="1"
他の回答が示唆しているように、の設定により、すべてのテキストを 1 行に保持し<textarea>
、次の CSS をテキスト領域に適用できます。
resize: none;
white-space: nowrap;
overflow-x: scroll;
この CSS は、表示領域からはみ出すテキストをナビゲートするためのスクロール バーを提供することで、行全体を表示したままにしながら、単一の行が折り返されるのを防ぎます。
rows
属性を1に設定できます。
マルチラインを無効にすることはできません
1 行のみを表示するには、rows=1 を使用します。このリンクからさらに詳しい情報を得ることができます