• 締切済み

左右に並べたオブジェクトの表示非表示を行いたい

上下に並べたボタンとテキスト入力欄の表示非表示は、INPUTオブジェクトのプロパティー、「style="display:none(block)」をJavaScriptで操作することによって可能だと思うのですが、「style」プロパティーの設定を行うと、上下にボタン、テキスト入力欄が表示されてしまいます。オブジェクトを左右に表示して、表示非表示をきる替えることはできないでしょうか?よろしくお願いします。

みんなの回答

  • Kuppycat
  • ベストアンサー率50% (109/216)
回答No.2

display:none ではなく visibility: hidden にしてはいかがでしょう? これなら領域は確保されたままなので、その部分が空白になりますがレイアウトは崩れません。

osiete2345
質問者

補足

回答ありがとうございます。質問の記述にもれていましたが、表示するオブジェクトは表示非表示と切り替えるとともに、ボタン→テキスト、プルダウン→ボタンと複雑に変わっています。というわけで、複数のタイプのオブジェクトを網羅的に並べておき、必要なものが表示されるようJavaScriptで制御しようと思っています。しかも、、横に2つ並べるだけでなく、4つ、5つと並べる場合もあります。なのでパターン化してDIVでくくっておくのも難しいのです。よろしくお願いします。

  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 多分、JavaScriptの問題ではなく、レイアウト方法だと思います。 border0のテーブルを利用して、左右にボタンとテキストフィールドを 並べてはいかがでしょうか? <table cellspacing="0" cellpadding="2" border="0"> <tr> <td><input type="text"></td> <td><input type="button"></td> </tr> </table> サイズ等は調節して下さい。

osiete2345
質問者

補足

回答ありがとうございます。補足ですが、INPUTオブジェクトにstyleプロパティーを設定しない場合は問題ないのですが、「style="display:none(block)」を付けると上下に表示されてしまいます。「display」の記述が問題だというのはわかっているのですが、何か対策は無いでしょうか、よろしくお願いします。

関連するQ&A

専門家に質問してみよう