【问题标题】:Remove space between table row删除表格行之间的空间
【发布时间】:2017-06-23 22:46:08
【问题描述】:

我正在构建一个 html 电子邮件模板,需要删除表格行之间的间距,但需要将单元格间距保持在 10 像素。您将在示例中看到蓝色标题栏及其下方的间距。有没有办法使用 CSS 隔离这些表行并删除它?

HTML:http://www.tailwatersflyfishing.com/email/template/new.html

【问题讨论】:

  • 您的示例不是很清楚,但是我建议您从表格中删除单元格间距并使用 CSS 边距和填充分隔表格。

标签: html css html-table row html-email


【解决方案1】:

首先,从语义上讲,表格不应该用于布局——它们应该用于显示表格数据...其次,一个修复(它不是一个很好的修复,但它有效)是从本质上禁用表格功能:

table, tbody, tr {
    display: block;
}

考虑将你的标题转换为 h2 标签或其他东西——也许是一个实际上在语义上创建的元素来做你想做的事情。

【讨论】:

  • 如果您的目标客户范围很广,那么这里唯一的选择就是使用表格进行布局......
  • 啊,是的,我从来没有为电子邮件设计过。无论如何,那里仍然有一个修复:)
【解决方案2】:

尝试向包含蓝色标题的表格添加新属性(单元格间距)

<table width="670" cellpadding="0" border="0" align="center" cellspacing="0">

您是否可能将单元格填充和填充与单元格间距混淆了,因为我看不到表格标签的任何单元格间距属性...

【讨论】:

    【解决方案3】:

    您不应该使用 CSS 调用,因为邮件程序不接受它们(Lotus,Outllok 2007,...)

    对于空间,您可以使用间隔图像(1x1 像素透明 gif)让它们看起来正确

    font-style:0 更正了 Firefox 渲染中 hotmail 中的空白。

    您还需要为所有图像放置一个 display:block 并为图像和它出现的 TD 指定一个高度和宽度。

    【讨论】: