6

単一の列のみでセル間隔を変更する方法はありますか? おそらくhtmlまたはcssで?

4

5 に答える 5

4

いいえ、HTML 属性cellspacingと対応する CSSの両方がborder-spacingテーブル全体にのみ適用されます。境界線が使用されておらず、背景が問題にならない場合は、パディングを使用してパディングを使用して同じ効果を得ることができます。ただし、表のセルの枠の間隔は、表内でやむを得ず均一です。

偽のセルを使用すると、回避策になる場合があります。セルに境界線を設定する代わりに、セル内にあるコンテナーに境界線を設定します。次に、セルのパディングは、セルの境界線間の間隔のように見えます。

于 2012-08-30T08:34:40.360 に答える
1

私は以下を使用してそれを発見しました:

CSS:

.flag {padding-left:8px;}

テーブル内の HTML:

<td class="flag">

1列だけの間隔の問題を解決するのに役立ちました。

于 2012-08-30T06:27:57.740 に答える
1

これに適した規則は次のとおりです。

HTML:

<table border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td class="large-padding">Row 1, Col 1</td>
    <td>Row 1, Col 2</td>
    <td>Row 1, Col 3</td>
  </tr>
  <tr>
    <td class="large-padding">Row 2, Col 1</td>
    <td>Row 2, Col 2</td>
    <td>Row 2, Col 3</td>
  </tr>
  <tr>
    <td class="large-padding">Row 3, Col 1</td>
    <td>Row 3, Col 2</td>
    <td>Row 3, Col 3</td>
  </tr>
</table>

CSS:

/* Used for all table cells */
td {
  padding: 10px;
}

/* Used for all table cells with the class large-padding, used on the first cell of every row (the first column */
.large-padding {
  padding: 10px 20px; /* 10px for top and bottom to keep inline with the other cells, 20px for left and right */
}

それがそれをよく示していることを願っています。これにより、セル内のパディングをより適切に制御できます。マージンを使用して、セル間の間隔を空けます。css クラスをすべての行の最初の td に適用すると、それがテーブルの最初の列になります。

于 2012-08-29T23:06:29.680 に答える
0

2 列のテーブルがあり、列の 1 つを幅の 50% ではなく 100% にしたい場合は、td タグで colspan プロパティを使用します。(私は w3schools から簡単な表をコピーしました。怒らないでください)

<table border="1">
  <tr>
    <th>Month</th>
    <th>Savings</th>
  </tr>
  <tr>
    <td>January</td>
    <td>$100</td>
  </tr>
  <tr>
    <td>February</td>
    <td>$100</td>
  </tr>
  <tr>
    <td colspan="2">Sum: $180</td>
  </tr>
</table>
于 2012-08-29T22:33:26.733 に答える
-1

幅を広げたい列にcssを適用すると、非常に簡単に解決するはずです。

<table>
    <tr>
        <td></td>
        <td id="extra_width"></td>
        <td></td>
    </tr>
    <tr>
        <td></td>
        <td></td>
        <td></td>
    </tr>
</table>

CSS では、その列に必要なスタイルを適用するだけです。

#extra_width {padding-left: 10px; padding-right: 10px;}

最初の行の中央にある表のセルに幅を適用すると、実際にはどの行でも機能すると思います。同じ列のセルはおそらく継承されるか、少なくともそのセルと同じ幅になります。

もちろん、パディングまたはマージンが必要な場合は、あなたの質問からそれを理解することができず、表の2つの結果について少し確信が持てません。

于 2012-08-29T22:39:00.070 に答える