【发布时间】:2023-03-28 03:43:01
【问题描述】:
根据我对 CSS 规范的理解,段落上方或下方的表格应该折叠垂直边距。然而,这并没有发生在这里:
table {
margin: 100px;
border: solid red 2px;
}
p {
margin: 100px
}
<table>
<tr>
<td>
This is a one-celled table with 100px margin all around.
</td>
</tr>
</table>
<p>This is a paragraph with 100px margin all around.</p>
我认为两个元素之间会有 100px,但有 200px —— 边距没有折叠。
为什么不呢?
编辑:这似乎是表格的错:如果我复制表格并复制段落,这两个段落将折叠边距。这两张桌子不会。而且,如上所述,表格不会与段落一起折叠边距。这是合规行为吗?
table {
margin: 100px;
border: solid red 2px;
}
<table>
<tr>
<td>
This is a one-celled table with 100px margin all around.
</td>
</tr>
</table>
<table>
<tr>
<td>
This is a one-celled table with 100px margin all around.
</td>
</tr>
</table>
p {
margin: 100px
}
<p>This is a paragraph with 100px margin all around.</p>
<p>This is a paragraph with 100px margin all around.</p>
【问题讨论】: