FORM文で改行されないようにするには?
[上に]
[前に]
[次に]
いそぎんちゃく
1999/10/29(金) 10:20:00
<FORM …>文や、</FORM>文を使うと、ブラウザ上でそこが改行されてしまいます。
この意図しない改行を防ぐために、
近くに<TABLE>がある場合は、</TR>と</TABLE>の間に入れてしまうという手がありますが、ないような場合はわざわざ仮のTABLEを作ってまではそういうことはやりたくありません(TABLEはページを重たくする原因になるので…)。
何か、他に良い手がありましたら御教授願います。
いちま
1999/10/29(金) 15:32:39
いちいちTABLEに入れなくても、
TABLEの外に直においても動作すると思うんですが、どうですか?
いちま
1999/10/29(金) 15:35:05
TABLEで改行されるのが嫌なら極端な話、
<body>の後と、</body>の前に<form>タグを置けば
改行はわからないと思います。
#質問の意図と違っていたらすみません。
そに〜
1999/10/29(金) 18:18:13
たとえば画像があって、
その右側にフォームをつけたいって事ですかね?
■□←チェックボタンなどのフォーム
画像↑
こんな感じ?
だとしたらFORMタグの中にIMGタグを入れればいいのでは?
全然関係無いか
箱
1999/10/30(土) 07:46:11
一般的によく使われている(?)方法は、<form・・・>はページの一番上に持ってくる、
あるいは改行があっても目立たない所に持ってくる。</form>はページの一番下に
持っていく、という方式のように思います。
よく使われている、と言っても「あれ、このフォームは改行が入ってない、どうやってるんだろう?」
と思ってソースを見てみたいくつかのページがたまたまそのようにしていた、
ということですが。
いそぎんちゃく
1999/11/01(月) 09:37:08
> 一般的によく使われている(?)方法は、<form・・・>はページの一番上に持ってくる、
> あるいは改行があっても目立たない所に持ってくる。</form>はページの一番下に
> 持っていく、という方式のように思います。
たしかにそのとおりだと思います。
しかし、私が作ろうとしているのは、ページ内にいくつものFORMがあるというものでして…、しかしまぁなかなか良い方法は見付からないみたいですね。
「そに〜」さんの方法も基本的には、ページの一番上と一番下というのと変わらないと思います。
ども、みなさん。いろいろ意見出して下さってありがとうございました。
のぐ
1999/11/01(月) 17:10:37
私も普通はみなさんのような方法を取ってますが、こんなのもありです。
一応、改行はなくなります。NC4、IE5 で動作します(多分IE4も)。
<form name="form1" style="float:left">
<input type="checkbox" name="check1" value="1">Check 1
</form>
<form name="form2" style="float:left">
<input type="checkbox" name="check2" value="2">Check 2
</form>
そに〜
1999/11/01(月) 17:23:22
個人的に知りたいんですけど、
FORMで改行してしまう状態ってどんな感じなんでしょう?
どれがその状態かちょっとわからなかったんで
いちま
1999/11/01(月) 17:54:23
> そに〜さんへ
テーブルなんかに<form>ごと入れてみるとよくわかります(^^)
四角い入力するところの上下に改行が入っちゃって
テーブルの高さがみょっと伸びます。
そに〜
1999/11/01(月) 18:04:48
なるほど、自分で回答しといて今やってることがわかった…
どうもです。
…?解決じゃないんですか?
J.Naka
1999/11/01(月) 20:26:48
想像で、スタイルシートで、FORMの改行をゼロにする。
moci
[E-Mail]
1999/11/02(火) 08:18:21
FORMは一つにして、type=submitのINPUTにnameとvalueを
指定して、actionで呼ばれたCGI側でどのボタンが押されたかを
判別するという手はいかがでしょう?
Another HTML-lintでは、nameに同じ値を指定している、と
怒られてしまいますが^^;
いそぎんちゃく
1999/11/02(火) 09:47:53
[[解決]]
みなさん、いろいろ御意見出して下さってありがとうございます。
こんなHTMLを仮に作って試してみました。
<HTML>
通常
<form name="form1">
<input type="checkbox" name="check1" value="1">Check 1
<input type="submit" value="送信">
</form>
<form name="form2">
<input type="checkbox" name="check2" value="2">Check 2
<input type="submit" value="送信">
</form>
<BR CLEAR=ALL>
<HR>
form style="float:left"
<form name="form1" style="float:left">
<input type="checkbox" name="check1" value="1">Check 1
<input type="submit" value="送信">
</form>
<form name="form2" style="float:left">
<input type="checkbox" name="check2" value="2">Check 2
<input type="submit" value="送信">
</form>
<BR CLEAR=ALL>
<HR>
form style="line-height:0%"
<form name="form1" style="line-height:0%">
<input type="checkbox" name="check1" value="1">Check 1
<input type="submit" value="送信">
</form>
<form name="form2" style="line-height:0%">
<input type="checkbox" name="check2" value="2">Check 2
<input type="submit" value="送信">
</form>
<BR CLEAR=ALL>
<HR>
</HTML>
イメージは、実際に作られて見てもらうとしまして…、
のぐさんの案(float:left)が良いかなと思われましたが、最初のformでなぜか改行がどうしても入ってしまいました(IE5/NC4.7共)。
後、line-height:0%指定は、「改行させない」という目的はまるで果たせず、しかもNC4.7の場合2個目のformがある行の表示の字がかけてしまって使い物になりませんでした。
mociさんの意見は「究極の裏技」といった感じで面白いですね。
完全な解決とまでは至ってないんですが、とりあえず「こうすると、こうなる」という事が分かっただけでも収穫でした。
みなさん、ありがとうございました。
解決印、つけておきます。
moci
1999/11/02(火) 14:58:58
蛇足ながら、RFC1866 HTML2.0の仕様にも例示されているので、
表か裏かと言えば、表かと…
まあ昨今の「裏技」という言葉は、表か裏かという意味合いとは
だいぶ違ってきているようにも思われますが^^;
いそぎんちゃく
1999/11/02(火) 16:08:25
こりゃまた、失礼しました。>mociさん
J.Naka
[E-Mail]
1999/11/13(土) 21:32:41
ところで、何故、FORMには改行があるの?
どんな理由?
言語仕様として、1つだけへんてこな動作するのはバグに近いのではないの?Object-Orientedの継承から逸脱しているで。
というのを、フリーメールログイン用インターフェィス作成中にFORMの改行がバランスを崩すために、またぞろ思い返したというわけ(^^;
[上に]
[前に]
[次に]