表中单个TD的CSS填充

wik*_*239 6 html html-table padding

我有一张桌子,像这样构造:

<table>
<tr>  <td>1</td>  <td>2</td>  <td rowspan="4">3</td></tr>
<tr>  <td>4</td>  <td>5</td>                        </tr>
<tr>  <td>6</td>  <td>7</td>                        </tr>
<tr>  <td>8</td>  <td>9</td>                        </tr>
<tr height="100"><td colspan="2">10</td><td class="eleven">11</td> </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

现在问题出在最后一行.整行的高度设置为100px,因此在TD中有足够的空间.在最后一个TD中,我想设置一个单独的填充,因此只有内容"11"从顶部填充:

.eleven {
    padding-top:15px;
}
Run Code Online (Sandbox Code Playgroud)

设置这会导致问题 - 此行中的第一个TD也会获得填充顶部:10px; 为什么以及如何只填充第二个?

Nav*_*h G 9

为什么不将你想要填充的内容包装成<div>(你将应用填充样式)并将其<div>放入<td>

<td>
    <div style="padding-top: 15px;"> 
        Content 
    </div> 
</td>
Run Code Online (Sandbox Code Playgroud)

  • 你可以把div放在你需要的地方,它是一个"分区".我只是给出了内联样式选项以保持简单,向他展示如何使用最少的代码完成它.显然他知道如何编写样式类,他可以弄清楚如何分离它们.Div在未来为他提供了更大的灵活性.如果他从基于桌面的设计切换到其他东西,Div可以保证他的安全. (7认同)
  • 因为你没有在你不需要的地方放置额外的div,并且你绝对不会为这些div应用内联样式. (3认同)

wik*_*239 7

好的,我发现了导致问题的原因.这是我使用的一个小html5-css-reset片段中的一个条目:

vertical-align:baseline;
Run Code Online (Sandbox Code Playgroud)

通常分配给大多数共同元素.考虑到这一点,现在一切都按照预期运作.