
現在HTMLとCSSでホームページを作成しています。
それで文とテーブルの間に意図しない空欄ができてしまいます。
この理由と対策を教えてください。
HTMLは↓
<div id="contents">
<div id="main">
<h2>会社概要</h2>
<table class="table">
<tr>
<th>社名</th>
<td></td>
</tr>
<tr>
<th>所在地</th>
<td></td>
</tr>
<tr>
<th>代表者</th>
<td></td>
</tr>
<tr>
<th>設立</th>
<td></td>
</tr>
<tr>
<th>資本金</th>
<td></td>
</tr>
<tr>
<th>従業員数</th>
<td></td>
</tr>
<tr>
<th>関連会社</th>
<td></td>
</tr>
</table>
</div><!-- main end -->
<div id="totop">
<p><a href="#top">ページのトップへ戻る</a></p>
</div><!-- totop end -->
</div><!-- contents end -->
です。
この会社概要<h2>と<table>の間に十数行の空欄ができます。
CSSを取り除いてHTMLだけにしても、こう表示されます。
ご回答お願いします。
No.5
- 回答日時:
十数行の空欄、と言うのは装飾上のスペースなのかテキストとしての改行なのか…。
改行が挿入されているのであれば、#2さんと#3のおっしゃるあたりが怪しいですね。
改行ではなく単純にスペースなのであれば、#1さんのおっしゃるmarginかもしくはline-heightあたり。paddingの可能性もありますが。
まあ、CSS完全にオフの状態でも出るのであれば改行<br>なんでしょうね。
ところで、#1さんがテーブルレイアウト云々と仰っていますが、こういった会社概要のコンテンツはテーブルで組むのはごく当たり前、正しい記述です。まぎれもなく「表」ですので。見せ方として全く異なる手法を用いる場合もありますが。
もしサイト全体をテーブルで組んでいるなら確かに問題ではあります。
CSSをオフにしてもなるので変だなぁとは思っていたんですが、テキスト上見やすくするスペースが犯人だとは・・・
あと、レイアウトはテーブルでは作成していません。
今のところ、ここだけをテーブルにする予定です。
回答ありがとうございました。
No.4
- 回答日時:
ANo.2さんに賛同します。
□□□□□ <table class="table">
□□□□□□<tr>
以下、同様に全角スペースが入っていますので削除してください。
No.3
- 回答日時:
NO.1さんのマージンではないとすれば、
CMSなどのシステム側でテキストの改行部分に br を混入するという素人仕様だからです。
表示されたHTMLを見れば、テーブルの各セル部分に br があるはずです。
テキスト部分の改行を反映しない設定にするか、
HTMLか書く場合には、改行をせずに1行に書くかの二択です。
1行とは、具体的には、
<h2>会社概要</h2><table class="table"><tr><th>社名</th><td></td></tr><tr><th>所在地</th><td></td></tr><tr><th>代表者</th><td></td></tr><tr><th>設立</th><td></td></tr><tr><th>資本金</th><td></td></tr><tr><th>従業員数</th><td></td></tr><tr><th>関連会社</th><td></td></tr></table>
No.1
- 回答日時:
CSSで、tableのmarginを設定していませんか?
CSSのtableで
margin:10px 10px 10px 10px;
と言う記述がありませんか?(数字は適当です。)
もしくは、
margin-top:10px;
の様な記述です。
marginは、tableの外側の余白の設定なので、
これを「0」にすれば不自然な余白は無くなると思います。
参考までに
「会社概要」をtableの中に入れてしまえば、
このmarginに振りまわされる事はないのでは?と思いますが…
そもそも、レイアウトするのにtableを使ってしまってるあたりで問題ですが…。
回答ありがとうございました。
テーブルのmarginには、デザインの関係上0px 0px 10px 0pxで設定しています。
また、h2にもmarginのbottomには設定していません。
CSSは外部ファイルでして、一回削除したりもしましたがHTMLが問題なのか、解決しませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javascriptを使って、指定行以...
-
テーブルの任意の列を非表示に...
-
テーブルのセルに画像をピッタ...
-
cssで、表示されるテキストによ...
-
TRタグの余白をcssで設定するには
-
文字列が入っているtdを削除せ...
-
テーブルの上に空行が入る・・...
-
CSSだけで<table>の<td>や<tr>...
-
中に<table></table>が使えるア...
-
tableにul,または,olを入れられ...
-
win IEでのtableタグを入れ子に...
-
テーブルの表示がずれます
-
テーブルのヘッダとボディの幅...
-
ホームページ 表の上の余白を...
-
tableの中にtableを作りスクロ...
-
tableコーディング 幅ピッタリ...
-
width指定したTDでwhite-space:...
-
表組の均等割り付け
-
文字の中央そろえを一括で指定...
-
テーブルの装飾
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テーブルの行を折りたたみたい...
-
テーブルの任意の列を非表示に...
-
テーブルのセルに画像をピッタ...
-
TRタグの余白をcssで設定するには
-
中に<table></table>が使えるア...
-
cssで、表示されるテキストによ...
-
テーブルのヘッダとボディの幅...
-
tableにul,または,olを入れられ...
-
ホームページ 表の上の余白を...
-
文字列が入っているtdを削除せ...
-
tableの要素(tr、td)に一...
-
テーブルの表示がずれます
-
テーブルタグのセルの幅の一部...
-
EXCELからhtmlへの変換で罫線が...
-
逆L字の表(table)組み
-
値が0なら非表示にしたい
-
CSSだけで<table>の<td>や<tr>...
-
テーブルの外側の線を消す
-
HTMLで文とテーブルの間が空く。
-
表(テーブル)内の文字サイズ...
おすすめ情報