【发布时间】:2021-02-02 22:38:26
【问题描述】:
我无法理解为什么下面的两个 HTML 块呈现不同。黄色和粉红色的表格缺少 BR 标记,流动效率很高,绿色和蓝色的表格在蓝色单元格的文本中间有 <BR> 标记,在绿色单元格中有不需要的空间。我尝试过渲染为弹性框和表格,它们的渲染方式相同。我试过不同的浏览器,它们的渲染方式都是一样的。
在绿色和蓝色布局中遵循什么规则会导致绿色单元格中出现空白?
如何获得像黄色和粉色外壳一样的渲染并使用<BR> 标签?我其实是在<P>标签之后,但我们只谈谈<BR>标签,我认为这是最简单的情况。
<html><body>
<div style="display: flex; flex-flow: row;">
<div style="background-color: green;">
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
</div>
<div style="background-color: blue;">
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.
<br/>
Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur?
</div>
</div>
<br/>
<table>
<tr>
<td style="background-color: yellow;">
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
</td>
<td style="background-color: pink;">
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.
<xbr/>
Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur?
</td>
</table>
<br/>
</body></html>
如果为 div 分配了高度,则不会删除空格(请参见下面的深绿色),并且如果允许将 <br> 标记放入具有单元格高度的表格中,则空格会在单元格的顶部和底部(请参见下面较浅的绿色) - 但 height 属性无论如何都不会影响渲染:
此行为在 FireFox 80.0 和 Chrome 版本 85.0.4183.83 中出现
【问题讨论】:
标签: html-table flexbox