が、私はこの非常に単純な形を持っている幅。液体テキストフィールドは、
テキストフィールドとボタンを1行にしたいが、size
属性を指定しても、テキストフィールドの幅がブラウザ間で矛盾しています。正確な幅を指定したくない場合(特にボタンの場合)、テキストフィールドに液体の幅を与えることが可能かどうか疑問に思っていましたか?私はそれとボタンの両方が1行に収まるように、テキストフィールドを伸ばしたい。
が、私はこの非常に単純な形を持っている幅。液体テキストフィールドは、
テキストフィールドとボタンを1行にしたいが、size
属性を指定しても、テキストフィールドの幅がブラウザ間で矛盾しています。正確な幅を指定したくない場合(特にボタンの場合)、テキストフィールドに液体の幅を与えることが可能かどうか疑問に思っていましたか?私はそれとボタンの両方が1行に収まるように、テキストフィールドを伸ばしたい。
はいlength
は幅ではなく文字数です。
ボタンが占める空き領域をすべて埋めるようにテキストボックスを設定しますか?これはテーブルで行うことができます(しかし、私は一貫してスタックオーバーフローでテーブルを示唆しています)。あなたがdisplay:tableでDIVを使う議論のために、実際のテーブルマークアップを使って簡単に説明しましょう。
<table cellpadding=0 cellspacing=0 width=100%>
<tr>
<td><input type="text" style="width:100%"></td>
<td style="width:0"><input type="submit"></td>
</tr>
</table>
ボタンセルの幅0は奇妙に見えるかもしれませんが、テーブルセルの幅は推奨値としてのみ使用されます。どのように痩せてもコンテンツにフィットするように伸びます。
デフォルトの送信ボタンスタイルを保持すると、その幅はブラウザごとに異なります。これはまた、あなたが求めるテキストフィールドの幅が変数であることを意味します。
がありますこれを行うにはエレガントな方法はありませんが、次のオプションがあります。
私は、HTML/CSSをマイクロマニュファクチャリングするのが最善ではないということを付け加えるべきです。それが私の場合は、テキストボックスに固定幅をemで指定するだけで十分です。デザイナーが、テキストボックスとボタンが右端に来るようになったら、新しいデザイナーが必要でしょうか? – jpsimons
これは私がやったことですが、div: "display:table"と書かれたdivを使っていましたが、入力に対しては、tdでラップするのではなく、 "display:table-cell" ?私は決してその方法を働かせることはありませんでしたが、それはdivが少ないことを意味するので、それに惹かれました。 – AJM
表形式のデータではないかもしれませんが、HTMLとCSSの現在のバージョンでは正しく解決できない問題が繰り返し発生する現実的な解決策です。 – AlexG