IE6,7
tableのcellpaddingをcellpadding="0"と表記してスタイルシートでセルのpaddingを指定するのと、cellpadding="0"と表記せずにスタイルシートでセルのpaddingを指定するのとでは、ブラウザーのテールブルの解釈(表示)が違うのですが、スタイルシートでセルのpaddingを指定する場合、HTMLのcellpaddingをcellpadding="0"と表記するべきですか又は表記しないべきですか?
以下の二つのコードの違いは、<table>タグにcellpadding="0"が「ある」か「ない」かだけですが、例2のコードのテーブルの方が例1のテーブルより全体的な幅が広く表示されます。
<例1:cellpadding="0"あり>
<html>
<head>
<style type="text/css">
.ta {
margin-top:20px;
margin-bottom:20px;
table-layout:fixed;
}
.ta_ti {
padding-top:5px;
padding-bottom:5px;
text-align:center;
font-size:18px;
font-weight:900;
line-height:180%;
}
.ta_he {
font-size:16px;
padding-top:5px;
padding-bottom:5px;
padding-left:10px;
padding-right:10px;
text-align:left;
vertical-align:top;
line-height:180%;
font-weight:900;
}
.ta_da {
padding-top:5px;
padding-bottom:5px;
padding-left:10px;
padding-right:10px;
text-align:left;
vertical-align:top;
line-height:180%;
}
</style>
</head>
<body>
<table class="ta" width="550" border="0" cellspacing="1" cellpadding="0">
<colgroup>
<col width="200">
<col width="347">
</colgroup>
<tr>
<td class="ta_ti" colspan="2">
タイトル
</td>
</tr>
<tr>
<td class="ta_he">
見出し
</td>
<td class="ta_da">
データ
</td>
</tr>
</table>
</body>
</html>
<例2:cellpadding="0"無し>
<html>
<head>
<style type="text/css">
.ta {
margin-top:20px;
margin-bottom:20px;
table-layout:fixed;
}
.ta_ti {
padding-top:5px;
padding-bottom:5px;
text-align:center;
font-size:18px;
font-weight:900;
line-height:180%;
}
.ta_he {
font-size:16px;
padding-top:5px;
padding-bottom:5px;
padding-left:10px;
padding-right:10px;
text-align:left;
vertical-align:top;
line-height:180%;
font-weight:900;
}
.ta_da {
padding-top:5px;
padding-bottom:5px;
padding-left:10px;
padding-right:10px;
text-align:left;
vertical-align:top;
line-height:180%;
}
</style>
</head>
<body>
<table class="ta" width="550" border="0" cellspacing="1">
<colgroup>
<col width="200">
<col width="347">
</colgroup>
<tr>
<td class="ta_ti" colspan="2">
タイトル
</td>
</tr>
<tr>
<td class="ta_he">
見出し
</td>
<td class="ta_da">
データ
</td>
</tr>
</table>
</body>
</html>
No.1ベストアンサー
- 回答日時:
興味があったので、上記2つのHTMLソースをコピー&ペーストしてブラウザに表示させてみました(border="1"にしました)が、
(例1)と(例2)のテーブルの幅は全く同じでした。
Windows XP Pro SP2 のIE6
Mac OSX 10.5 のSarari 3.0.4
Mac OSX 10.5 のFireFox 2.0.0.12
いずれのブラウザでも、全く同じテーブル幅です。
個人的な環境にもよるのかもしれませんが、cellpadding="0"のあり・なしで差はありませんでした。
この回答への補足
edge_windさん
ご回答、ありがとうございました。
>(border="1"にしました)
.taのスタイルにbackground-color:#666666;
が抜けていました。
詳細:
border="1"を使用せずに、上記例1及び例2のコードの
.ta {
margin-top:20px;
margin-bottom:20px;
table-layout:fixed;
}
を
.ta {
margin-top:20px;
margin-bottom:20px;
table-layout:fixed;
background-color:#666666;
}
に変更してテストしていただけるでしょうか?
<table>タグにcellspacing="1"が設定してあるので、テーブルのバックグラウンドのbackground-color:#666666;が表示され、ボーダの代わりとなります。
これで、私のブラウザーの場合、tableのcellpaddingをcellpadding="0"と表記してスタイルシートでセルのpaddingを指定するのと、cellpadding="0"と表記せずにスタイルシートでセルのpaddingを指定するのとでは、ブラウザーのテールブルの解釈(表示)が違うのです。
よろしくお願いします。
No.2
- 回答日時:
補足いただいたHTMLソースで試してみましたが、やはり再現できませんでした。
参考までに画像にしてみましたのでご確認ください。
スタイルシート部分は共通だったので、1つのHTMLファイルに複数テーブルを載せています。
Windows XP Pro IE6
http://blog.goo.ne.jp/edge_wind/e/969915689cdece …
Mac OSX 10.5 FireFox 2.0.0.12
http://blog.goo.ne.jp/edge_wind/e/80ddd4a64b60f3 …
Mac OSX 10.5 Sarafi 3.0.4
http://blog.goo.ne.jp/edge_wind/e/98c6f3c0741cc6 …
テーブル幅が変わる理由がよくわかりませんね。
お役に立てず申し訳ありません。
この回答への補足
edge_windさん
ご回答、ありがとうございました。
ブラウザの表示画面の「右」端を記載されていますが、テーブルのcellpadding="0"を削除した場合、「左」端が切れるのです。
もしよろしければ、このページに記載しているコード(補足分も含め)のテーブル(以下「元コードのテーブル」という)を更に大きなテーブル(ただし幅は元コードのテーブルより左右1px大きいだけ)で囲って見てください。外側のテーブルは、幅が変わらないようにスタイルシートで固めてください。
そして、元コードのテーブルのcellpadding="0"を削除した場合、元コードのテーブルの幅が外側のテーブルからはみ出します。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- オープンソース cssで中央寄せ 1 2023/05/19 06:25
- HTML・CSS テーブルタグのセルの幅の一部だけを指定 1 2023/03/12 12:02
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- HTML・CSS CSSがなぜかfont-sizeだけ効かない...記述がまちがっているんでしょうか 5 2022/04/09 17:52
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- HTML・CSS 下にスクロールしても、追従するボタンのコードを書いたのですが、ボタンの中の画像が半分しか表示されない 1 2022/04/16 21:31
- HTML・CSS スクロールすると追従する画像のコードを書いているのですが、追従する画像の大きさの調節が上手くいきませ 2 2022/04/18 12:52
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlの文字が縦書きになる
-
CSS、width100%でもできる余白
-
【CSSについて】リストをフロー...
-
HTMLのiframeの入れ子について
-
【HTML】【CSS】【Swiper】 元...
-
CSSでボックスのheightが0になる
-
定義リスト dl dd dt
-
テーブル内の文字が揃わない
-
ヘッダーの高さが合わない
-
定義リストに下線をつけたいと...
-
divで囲まれたpaddingの指定を...
-
div内に外部のurlを表示させたい
-
定義リストで先頭にアイコン
-
外側のdivの高さを入れ子のdiv...
-
デスクトップ用のWEBサイトをス...
-
透明divの下に長い余白ができて...
-
背景が下まで表示されないんです。
-
Webサイトretinaディスプレイのcss
-
枠線でメイン部分を囲み、フッ...
-
CSS リンクを枠で囲み背景色を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlの文字が縦書きになる
-
widthやheightの数値に単位(px...
-
画像イメージの上下左右、欲し...
-
css初心者 フレックスボックス...
-
表示倍率を変えるとレイアウト...
-
CSSがなぜかfont-sizeだけ効か...
-
CSS、width100%でもできる余白
-
W3Cのソースコードの検証サービ...
-
CSS:animation開始位置の設定
-
CSSで指定した背景画像にリンク...
-
<div>と<div>の間の10px程の...
-
余分な縦スクロールバーが出て...
-
CSSでボックスのheightが0になる
-
【CSS】ヘッダーの高さが不明の...
-
スクロールボックスを中央に配...
-
li 黒丸含んで移動する方法
-
border-style:solidで文字がずれる
-
【HTML&CSS】フッター下部の余...
-
Media Queries 4 で 非推奨とな...
-
初心者html・CSS ウィンドウを...
おすすめ情報