• ベストアンサー

フォームのレイアウト

以下のようなフォームを作成しましたが、検索ボタンの下が妙に余っているのです。 これを上側と同じようにくっつけたいのですが、どうしたらよいでしょうか? よろしくお願いします。  <table border="1" width="200" border="0" cellspacing="0" cellpadding="2"> <tr><td> <div align="center" valign="middle"> <form method="get" action="url" target="_blank"> <input name="sitem" type="text" id="inputbox" size="20"><BR> <input name="Submit" type="submit" id="inputsubm" value="検索"> <input type="hidden" name="sv" value="6"> <input type="hidden" name="sid" value="12345"> <input type="hidden" name="su" value="bbb"> <input type="hidden" name="sn" value="aaa"> <input type="hidden" name="v" value="3"> </form></div> </td></tr></table>

  • HTML
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

こんにちわ。 formタグをtableの外側に持っていってみてください。 あと、hidden属性はsubmitより前に持っていきましょう。 <form method="get" action="url" target="_blank"> <table border="1" width="200" border="0" cellspacing="0" cellpadding="2"> <tr><td> <input name="sitem" type="text" id="inputbox" size="20"><BR> <input type="hidden" name="sv" value="6"> <input type="hidden" name="sid" value="12345"> <input type="hidden" name="su" value="bbb"> <input type="hidden" name="sn" value="aaa"> <input type="hidden" name="v" value="3"> <input name="Submit" type="submit" id="inputsubm" value="検索"> </div> </td></tr></table> </form>

mariboh
質問者

お礼

回答ありがとうございます。 外側につけるんですね!なるほど勉強になりました。さっそく直しました。

その他の回答 (1)

  • preta
  • ベストアンサー率66% (4/6)
回答No.1

cssで→ form{ margin:0; padding:0; } ブラウザのデフォルトのスタイルシートがformにもうけた余白を上書きすれば、余白が消えます。 ところで、どうしてもテーブルやdivを用いなくてはいけないのでしょうか? 少なからずこれは「表」ではないように見受けられます。 <style type="text/css"> form{ margin: 0; padding: 2px; width: 200px; border: 2px ridge #ccc; text-align: center; } form p{ margin: 0; padding: 0; } </style> <form method="get" action="url" target="_blank"> <p> <input name="sitem" type="text" id="inputbox" size="20"><BR> <input name="Submit" type="submit" id="inputsubm" value="検索"> <input type="hidden" name="sv" value="6"> <input type="hidden" name="sid" value="12345"> <input type="hidden" name="su" value="bbb"> <input type="hidden" name="sn" value="aaa"> <input type="hidden" name="v" value="3"> </p> </form>

mariboh
質問者

お礼

回答ありがとうございます。 このようにしてもできるんですね。 実はこれは仕事で使っているファイルでして、前任者の作成したものをいじっているものですから、大幅な改定はできない事情があるのです。 ちょっと理由は不明なのですが、CSSを使わずに、テーブルを入れ子にして1pxのラインを作ったりしています。 (古いブラウザへの対応ということでしょうか)

関連するQ&A

  • テキストから要素を抜き出してフォームで送信したい。

    <body> <form action="xxx.cgi" method="post"> <input type="hidden" name="n" value="v"> <table> <tr id="hoge_a"> <td>AAA</td> </tr> <tr id="hoge_b"> <td>BBB</td> </tr> </table> <input type="submit" name="submit"> </form> </body> というHTMLの中で、AAAを抜き出してフォームと一緒にpostでサブミットしたいのですが、javascriptで出来ますでしょうか。 よろしくおねがいします。

  • &ReadParseでフォームの値が取れない

    require "./cgi-lib.pl"; ・ print << "END"; <FORM method="POST" action="$self"> <TABLE border="0" cellspacing="6" width="600"> <TR> <TD valign="top" width="116">■メッセージ(※)</TD> <TD colspan="3" width="371"><TEXTAREA rows="10" cols="50" wrap="soft" name="message">$message</TEXTAREA></TD></TR> <TR> <TD valign="top" align="right" colspan="2"><INPUT TYPE="file" NAME = "file" size ="50"></TD> </TR> </TABLE> <INPUT TYPE=HIDDEN NAME=mycmd VALUE=do_write> <INPUT TYPE=HIDDEN NAME=time VALUE="$time"> <INPUT type="submit" value=" 送 る "> <INPUT type="reset" value="やり直す"> </FORM>・ ・ ・ ・ sub do_write { &ReadParse; $message = $in{'message'}; これでmessageの値が取れるはずなのですが、空のようです。同じプログラムで使えてたときもあったのですが、いじっているうちにReadParseが機能しなくなりました。といっても、cgi-libの中をいじったわけではありません。 確実にmessageフォームの中身を取る方法があったら 教えてください。 あるいは原因を探る方法でも結構です。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • データーベースをフォームから入力し更新

    データーベースをフォームから入力し更新 登録済のデーターベースをフォームから入力し更新したいのですが、どうしてもうまくいきません。 http://park18.wakwak.com/~little-box/Dreamweaver/sql010.htm のサイトを参考にしているのですがitiran.phpのところからつまづいています。 // 検索した結果を全部表示 echo "<table border=1>"; echo "<tr><td>id</td><td>name</td></tr>"; while($row=mysql_fetch_array($res)){    echo "<tr>";    echo "<td>". $row["name"] . "</td>";    echo "<td>". $row["age"] . "</td>";    echo "<form action=koushin_input.php method=post>";    echo "<input type=hidden name=id value=" . $row["id"] . ">";    echo "<td><input type=submit value=更新></td>";    echo "</form>";    echo "<form action=sakujo.php method=post>";    echo "<input type=hidden name=id value=" . $row["id"] . ">";    echo "<td><input type=submit value=削除></td>";    echo "</form>";    echo "</tr>"; } echo "</table>"; の辺りがおかしいのではと思っているのですが… アドバイスください。また、他に参考になるサイトがありましたらぜひ教えてください。

    • ベストアンサー
    • PHP
  • MTOS内のページに設置したメールフォームについて

    いつもみなさんのアドバイスを参考にさせて頂いております。 早速ですが、MTサイト内にメールマガジンのフォームを設置したところ、実際に名前とメールアドレスを入力し送信ボタンを押しても名前が入力されていませんなどとエラーが表示されます。 メールマガジン自体は他サイトで使用しているものでメールマガジンで使用しているCGIも他サイトのサーバにて稼動しております。 ところが、使用しているタグ<form> ~ </form>までをそのままMTに貼り付けて設置してみてもうまく運用できません。 何か問題があるのでしょうか? ちなみにタグは以下の通りです。 <div id="mail_maga"> <form action="http://www.***/***.cgi" method="post"> &nbsp;<table id="AutoNumber1"><tbody><tr> <td colspan="2" class="mail_magat">☆ メルマガ登録</td> </tr><tr> <td class="mail_magast">お名前</td> <td class="mail_magain"><input type="text" name="お名前" size="30"></td> </tr><tr> <td class="mail_magast">メールアドレス</td> <td class="mail_magain"><input type="text" name="メールアドレス" size="30"> 半角英数字</td> </tr></tbody></table> <table id="AutoNumber2" class="mail_maga2"><tbody><tr> <td> <input type="hidden" size="1" name="code" value="0000a" /> <input type="hidden" size="1" name="mlcd" value="0000a" /> <input type="hidden" size="1" name="key01" value="2542666" /> <input type="hidden" size="1" name="HPADDR" value="http://www.***/***.html" /> <input type="submit" name="mode" value="送信" /> <input type="submit" name="mode" value="内容確認" /> <input type="reset" value="リセット" /> </td> </tr></tbody></table> </form> 何かアドバイスありましたら宜しくお願いします。

    • 締切済み
    • CGI
  • メールフォームについて

    この中にどのようなHTMLを書けば自分のPCにメールが届く ようになりますか?よろしくお願いします。 <h2>■MAIL FORM</h2> <div class="text"> <form><table><tr><td width="100" align=right> NAME</td><td align=right><input type="text" name="Name" size="34"></td></tr><tr><td width="100" align=right> MAIL</td><td align=right><input type="text" name="Mail" size="34"></td></tr></table> <TEXTAREA NAME="Comments" ROWS="8" COLS="39" value="comments"></TEXTAREA> <br> <table><tr><td width="100" align=right> </td> </tr><tr> <td width="100" align=right> URL</td><td><input type="text" name="URL" value="http://" size="34"></td></tr><tr><td></td><td align="right"> <INPUT TYPE="reset" VALUE=" Reset "> <INPUT TYPE="submit" VALUE=" Send "></FORM> </td></tr></table><br></div>

    • ベストアンサー
    • HTML
  • 【フォーム】PHPで確認画面をだした後にボタンを

    ほぼ初心者のものです 下記のようなフォームをつくりました <form action="regist.php" method="post"> <input type="radio" name="08241" value="A11"/> <input type="radio" name="08241" value="B11"/> <input type="radio" name="08241" value="C11"/> <input type="radio" name="08241" value="D11"/> <input type="radio" name="08241" value="E11"/> <input type="radio" name="08241" value="F11"/> <input type="submit" value="登録する" /> そしてこれらを確認するためにregist.phpを作成し <table width="250" border="1"> <tr> <td width="250">選択したもの</td> </tr> <tr> <td><?php echo $_POST["08241"] ?></td> </tr> <tr> <td>●●●</td> と記載し、選んだものを表示できるようにしました ここからが皆様にお力を借りたいところなのですが フォームから「A11」が選択されて確認画面に「A11」と表示されたとき ●●●のところに下記のような情報を含んだボタンを表示させたいんです <form name="a11" action="/products/detail.php" method="post" > <input type="hidden" name="mode" value="cart" /> <input type="hidden" name="product_id" value="137" /> <input type="hidden" name="product_class_id" value="634" /> <input type="hidden" name="quantity" value="1" /><br /> <input type="submit" value="決定する" onClick="alert('選択しました')" /> </form> このボタン情報はA11~F11まであって、product_idやproduct_class_idは それぞれ異なっています どこかに一覧を作成しておいて form nameで一致したものを表示させるといった やり方なのかなとは思うのですが、その方法がわかりません PHPを使えばいいのかJavascriptがよいのかもあわせ、記述方法などをご教授いただけませんでしょうか? どうかよろしくお願いいたします

    • 締切済み
    • PHP
  • 楽天アフィの検索窓(form)の左右中央化

    こんにちは。 ホームページを製作しているものです。楽天ブックスの検索窓を設置しようと考えています。それが下記です。 <form method=get action="http://pt.afl.rakuten.co.jp/c/秘密にさせて下さい/"><input type=hidden name=sv value=6><input type="hidden" name="sid" value="213310"> <input type="hidden" name="su" value="rakutenbooks"> <input type="hidden" name="sn" value="楽天ブックス"> <input type="hidden" name="cord" value="s"><table width=150 border=0 cellspacing=0 cellpadding=1 bgcolor=#107400><tr><td align=center><table cellspacing=0 cellpadding=3 border=0 width=100% bgcolor=#FFFFFF><tr> <td bgcolor=#107400 align=center><b><font size=2 color=#FFFFFF>楽天ブックスで探す</font></b></td> </tr><tr bgcolor=#fffcdd><td nowrap align=center><input type=text size=14 name=sitem value=></td></tr><tr bgcolor=#fffcdd><td align=center><input type=submit value=商品検索 name=submit></td></tr><tr><td nowrap align=center><img src=https://image.books.rakuten.co.jp/books/img/bookimg/_h1529_bookslogo.gif width=145 height=27 border=0 alt=楽天ブックス></td></tr></table></td></tr></table><input type="hidden" name="scid" value="af_ich_link_search"></form> この<form>を<center>タグではなくCSSで左右中央化がどうCSSで指定しても出来ませんでした。 CSSファイルで下記を記述し<form>を挟んでも不可でした。 .cent { margin-left:auto; margin-right:auto; text-align:center; } お分かりの方、どなたかご教示願えないでしょうか? 何卒よろしくお願い申し上げます。

    • ベストアンサー
    • CSS
  • Yes/No型を使ってアップロード

    はじめまして。 下記にhtmlを書かせていただいてますが、このhtmlの『アップロード』のボタンを押すと 1. データベース『mdb』のYes/No型にチェックが入る 2. Yes/No型にチェックが入ったものはアップロードされる ようにすることはできるでしょうか?また、何か参考になるサイト様などがあれば 教えていただきたいのです。 おわかりになる方、よろしくお願いします。 下記のような↓フォームです。 ---------------------- <table> <TR> <TD> <INPUT type='hidden' NAME='UPDATE_ID' VALUE='1'> <center><INPUT TYPE='submit' VALUE=' アップロード '><br><center> <p></p> </TD> <TD>登録ファイル1</TD></FORM> <FORM ACTION='' METHOD='POST'> <TR> <TD> <INPUT type='hidden' NAME='UPDATE_ID' VALUE='2'> <center><INPUT TYPE='submit' VALUE=' アップロード '><br><center> <p></p> </TD> <TD>登録ファイル2</TD></FORM> <FORM ACTION='' METHOD='POST'> <INPUT type='hidden' NAME='UPDATE_ID' VALUE='3'> <TR> <TR> </FORM> <TR> </table>

  • tableタグとformタグの組み合わせ

    tableタグとformタグの組み合わせでどのように記述すれば、構文上正しいのでしょうか? 私は下のパターンで書いておりますが、間違いでしたら早めに改めたいので お聞きしました。 <table> <form> <input type="hidden" name="a" value="1"> <tr> <td> <input type="text" name="b" value=""> </td> </tr> <tr> <td> <input type="submit" value="OK" value=""> </td> </tr> </fomr> </table>

    • ベストアンサー
    • HTML
  • メールフォームの内容を送信者にも控えがとれるようにしたい

    下記の件で困っています。 HTMLの中で、メルフォを設けました。 <form method=post action="フォームデコードサービス"> <input type=hidden name="_mailto" value="***@*****.ne.jp"> <input type=hidden name="_subject" value="件名"> <input type=hidden name="_location" value="http://戻りURL.htm"> <table border="0" cellpadding="5" cellspacing="0" width="900"> <tr> <td width="150">氏名</td> <td colspan="2" width="700">     <input type="text" size="30" name="氏名"></td> </tr> ・ ・ ・ <p> <input type="submit" value="submit"> <input type="reset" value="reset"> </p> </form> 最初はデコードサービスを使わなかったのですが、Macから送信されるデータが文字化けする為、使うことにしました。 しかし、そうすると、送信者に送信内容が残らなくなってしまいました。 送信者の手許にもコピーが残るようにしたいので、お知恵を拝借できれば幸いです。 よろしくお願い致します。

専門家に質問してみよう