• 締切済み

フレームを使った縦横中央へのレイアウト

縦横ともに画面中央にレイアウトするには、どのような方法が良いのでしょうか? http://www.salon-de.net/main.html このサイトではテーブルを縦横100%にしてセルで中央にレイアウトされるように指定しているようですが、テーブル縦100%を認識しないブラウザでは中央レイアウトになりません。 http://www.parkhyatttokyo.com/ このサイトでは、なぜかフレームを縦2段で100%と相対に指定し、100%の方に内容の入ったHTMLファイルを表示させています。 画面中央にレイアウトされたページでは、このようにフレームを縦2段にして100%と相対に指定したものが多く見受けられますが、これにはどのような意味があるのでしょうか? さらに、 http://www.toraya-cafe.co.jp/ では同様のフレームが2重になっています。 また、なぜか「TD」タグ内では「vAlign=center」「align=middle」のようにダブルクォーテーションを付けない書き方が多数派となっています。 この理由はなぜでしょうか? 詳しい方お教え願います。

みんなの回答

  • randman
  • ベストアンサー率51% (17/33)
回答No.2

最良の答えは常にひとつ。 <TABLE border="0" cellpadding="0" cellspacing="0" width="100%" height="100%"> <TR> <TD align="center" valign="middle"> ここにコンテンツが入ります。 </TD> </TR> </TABLE> 縦100%に対応していないブラウザ、私は知りません。 あったとしても、サイト案の段階で切り捨てます。 古くても旧NNに対応していれば、文句を言うユーザもいませんから。 あと、質問と質問名からは、テーブルを使えば良いのか、フレームを使えば良いのかがわかりません。フレームを使うのなら、先のテーブルにIFRAMEを入れるか、定石通りページを5分割する方法をとれば良いでしょう。これなら縦100%に対応していないブラウザでもOKかな? >なぜかフレームを縦2段で100%と相対に指定し~ 100%でないページは、 ・JavaScriptの変数や、カウンタ用のCGIを入れたりするため。 ・アドレスバーにドメイン名のみを表示するため。あるいは、トップページをブックマークさせるため。 たいてい後者です。 >なぜか「TD」タグ内では~ こういったコードは人が書いたものではありません。 おばかなジェネレータ(DreamWeaverなど)が吐き出したものです。 よって、気にすることはありません。「valign="middle"」などときちんと書けば良いのです。 コードはシンプルに。頭で正しいと思えば、たぶん、それが正解です。

すると、全ての回答が全文表示されます。
  • moon_night
  • ベストアンサー率32% (598/1831)
回答No.1

>縦横ともに画面中央にレイアウトするには、どのような方法が良いのでしょうか? いろいろなサイトを周ってみてよさげなところからソースを引っ張ってくるのが簡単で手っ取り早いと思われます。 >テーブル縦100%を認識しないブラウザでは中央レイアウトになりません。 想定ブラウザにあわせたサイト作りをすればよろしいと思います。 >なぜかフレームを縦2段で100%と相対に指定し これは表示してみれば分かるのですが、フレームで分けると、横のスクロールバーを消すことができます。 スクロールバーが表示されるのを嫌ったのでしょう。 >また、なぜか「TD」タグ内では「vAlign=center」「align=middle」のようにダブルクォーテーションを付けない書き方が多数派となっています。 この理由はなぜでしょうか? たまたま多数見かけただけとは思いますが。 基本的に半角の英数字ならば普通に動くからクウォーテーションをつける手間を省いたのではないでしょうか。 多分「動けばいいじゃん」的な考えでしょう。。

すると、全ての回答が全文表示されます。

関連するQ&A