本文とその他のコンテンツで満たされた親div内にあるテーブルがあります。動作していないように見える次のCSSがあります。
table {width:100%; padding: 0 50px 0 50px;}
パディングの代わりにマージンを使用すると、それは機能します。ただし、width:100%で、マージンを使用すると、すべてが親divからスクートされます。幅を小さくしたり、正確なピクセル量を指定したりできると思いますが、サイトの残りの部分は画面サイズに合わせてスケーリングされるので、これも同様に機能させたいと思います。
テーブルに関連するいくつかの特別なプロパティがあります。探しているのはborder-spacing
です。
table {
width: 100%;
border-collapse: separate;
border-spacing: 0 50px;
}
例: http://jsfiddle.net/feeela/fPuQ6/
UPDATE:自分のバイオリンで遊んだ後、「テーブルにはパディングがない」と言って間違えたことを認めなければなりません。少なくともChromeおよびOpera(12)。次のスニペットもあなたが欲しがっているはずです。
table {
width: 100%;
padding: 0 50px 0 50px;
}
フィドルの更新版を参照してください: http://jsfiddle.net/feeela/fPuQ6/3/
それにもかかわらず、display: block;
を持つ要素のように、なぜパディングが幅に追加されないのか疑問に思っています。
こちらもご覧ください:
前の答えは、cssがea方向にborder- [direction]を個別に設定できることを示しています。しかし、古いスタイルのtable cellpadding="7" border="1"
を複製するはるかに単純なCSSのみのソリューションは次のようになります。 CSSで:
table {
border-collapse:collapse;
width: 100%;
}
td {
padding: 7px;
border:1px solid;
}
このフィドルに示されている: http://jsfiddle.net/b5NW5/77
テーブル定義にセルのパディングを追加することができますOR CSSを使用したい場合、これを試すことができます:
CSSを使用する場合:
<style type="text\css">
.table {
width: 100%;
border-top:1px solid red;
border-right:1px solid red;
border-collapse:collapse;
}
.table td {
padding: 7px;
border-bottom:1px solid red;
border-left:1px solid red;
}
</style>
<table class="table">
<tr><td>Cell1a</td><td>Cell1b</td><td>Cell1c</td></tr>
<tr><td>Cell2a</td><td>Cell2b</td><td>Cell2c</td></tr>
<tr><td>Cell3a</td><td>Cell3b</td><td>Cell3c</td></tr>
</table>
インラインを使用する場合:
<table cellpadding="9" cellspacing="5" style="border-collapse:collapse;" border="1">
<tr><td>Cell1a</td><td>Cell1b</td><td>Cell1c</td></tr>
<tr><td>Cell2a</td><td>Cell2b</td><td>Cell2c</td></tr>
<tr><td>Cell3a</td><td>Cell3b</td><td>Cell3c</td></tr>
</table>
こちらで実際に動作を確認できます: http://jsfiddle.net/b5NW5/1/
それが役に立てば幸い
これが理由です。
[〜#〜] mdn [〜#〜] から、テーブルでパディングを使用するには、許可するために_border-collapse: separate;
_が必要です_border-spacing
_を使用する場合は、_border-spacing
_が外側のテーブルEdgeと外側のセルのEdge間の距離の計算の要因であるため( [〜 #〜] mdn [〜#〜] 以下)。その後、padding
に値を割り当てることができます。 _border-spacing: 0px;
_を設定して、パディングへの_border-spacing
_の追加をキャンセルすることもできます。
Border-spacing CSSプロパティは、隣接するセルの境界間の距離を設定します。このプロパティは、border-collapseが分離されている場合にのみ適用されます。
境界線間隔値は、テーブルの外側のエッジに沿って使用されます。テーブルの境界線と最初/最後の列または行のセル間の距離は、関連する(水平または垂直)境界線間隔とテーブルの関連する(上、右、下、または左)パディング。