夏が終わったと感じる瞬間って、どんな時?

html+CSSでページを作っていて
途中にテーブルを入れると
レイアウトが崩れます。

テーブルのすぐ右横に次の見出しが来てしまったりします。
どうしたらいいでしょうか?

<body>
<div id="wrapper">
<div id="header">
~略~
</div>
<div id="contents">
<h2> ●●● </h2>
<h3> ●●● </h3>
例えばココに<table>~</table>

<h2> ●●● </h2>
<h3> ●●● </h3>
</div>
</div>
</body>

とするとこのテーブルの真横に次の<h2>が来てしまいます。
テーブルの用途は料金表などで、レイアウト的に使うのではありません。

どなたかご教授下さい。
宜しくお願いいたします。

「cssの中にテーブルを入れると崩れる。」の質問画像

A 回答 (3件)

tableはブロック要素ですから、前後に余白が置かれるはずです。


ブロック要素かインライン要素かは、HTMLを書く最も基本的な部分です。
ただ、tableは、他のブロック要素の幅がその親のブロックの内幅全体なのに比較して伸縮すること。
 でも改行されることに変わりはありません。

 ただし、table要素にfloatを設定すると、当然続くデータは回り込みます。

Q: tableに何か指定していませんか?

 不思議なのは、その場合には上端がそろうはずですが、添付されている画像では、上が開いている。

 なお、位置を合わせるための<br>や<p>要素は書くべきではありません。

この回答への補足

ご回答ありがとうございます。
tableはdivで囲ってフォントの大きさのみ指定しています。

>位置を合わせるための<br>や<p>要素は書くべきではありません。
わかりました(^0^)

補足日時:2009/12/16 14:09
    • good
    • 0

css



table {clear:both;}
    • good
    • 0

>テーブルのすぐ右横に次の見出しが来てしまったりします。



テーブルと見出しの間に「<BR>」による「明示的な改行」を入れましょう。

テーブルの直後に「明示的な改行」が無い場合、テーブルの右に「まだ表示出来る余白」があれば、続きの部分がその余白に表示される場合があります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!