html - 删除表格行之间的间距

标签 html css html-email

我已经查看了许多关于此问题的类似标题的问题,并尝试了许多已接受的答案,但仍然得到不需要的行空间。像许多问题一样,我正在制作一个电子邮件模板,所以我必须使用嵌套表格来获得我想要的结构,而且要使其在电子邮件中正确呈现。

我尝试过但没有奏效的解决方案:

  1. 单元格间距 = 0
  2. 单元格填充 = 0
  3. 边框折叠:折叠
  4. 边框间距:0
  5. 边距:0 0 0 0
  6. style="display: block"我的图片

这些似乎都没有什么区别,我无法摆脱行空间。这发生在 Chrome/IE/Firefox 中。

enter image description here

<html lang="en">
    <head>
        <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
        <title>
          Title
        </title>
        <style type="text/css">
        a:hover { text-decoration: none !important; }
        .header h1 {color: #055d90; font: normal 25px Georgia, Times, serif; margin: 0; font-weight: bold; padding: 0 0 0px 0; line-height: 39px; margin-top: 0;}
        .header p {color: #cf373e; font: normal 17px Georgia, Times, serif; margin: 0; padding: 0; line-height: 12px; font-style: italic;}
        .custinfo h1 {color: #FFFFFF; font: normal 25px Tahoma, Times, serif; background-color: #FF8000; padding: 10px 0 10px 0;}
        .custinfo h2 {color: #FFFFFF; font: normal 15px Tahoma, Times, serif; background-color: #707070; padding: 0 0 0 0;}
        .table {border-collapse: collapse;}
        .table td {margin: 0; padding: 0; display:block;}
        </style>
    </head>
    <body style="margin: 0; padding: 0;">
        <table align="left" width="100%" class="table">
            <tr>
            <!--header-->
                <table class="table"  cellpadding="0" cellspacing="0" width="100%" style="border-collapse: collapse;  border-spacing: 0; margin-top: 0;">
                    <tr>
                        <td valign="top">
                            <img src="images/logo.gif" style="display: block; border: 0" alt="" width="200" height="100">
                        </td>                       
                    </tr>
                    <tr>
                        <td valign="top" align="middle" class="header" width="100%">
                            <h1>Order</h1>
                        </td>
                    </tr>
                </table>
                <table class="table" cellpadding="0" cellspacing="0" width="100%" style="border-collapse: collapse;  border-spacing: 0;">
                    <tr class="custinfo">
                        <td width="50%">
                            <h1>[DISTRIBUTOR NAME]</h1>                         
                        </td> 
                        <td align="middle">
                            <h1>[ORDER DATE]</h1>
                        </td>
                    </tr>                   
                </table>
                <table class="table" cellpadding="0" cellspacing="0" width="100%" style="border-collapse: collapse;  border-spacing: 0;">
                    <tr class="custinfo">
                        <td>
                            <h2>PO# [PO NUMBER]</h2>                                    
                        </td> 
                        <td >
                            <h2>Customer [COMPANY NAME]</h2>
                        </td>
                        <td >
                            <h2>Total Order [TOTAL ORDER]</h2>
                        </td>
                    </tr>
                    <tr class="custinfo" style="margin:0">
                        <td>
                            <h2>PO# [PO NUMBER]</h2>                                    
                        </td> 
                        <td>
                            <h2>Customer [COMPANY NAME]</h2>
                        </td>
                        <td>
                            <h2>Total Order [TOTAL ORDER]</h2>
                        </td>
                    </tr>
                </table>
            </tr>
        </table>
    </body>
</html>

最佳答案

您应该防止 h1h2 元素发生边距折叠。

h1, h2 {
  margin: 0;
}

a:hover {
  text-decoration: none !important;
}
.header h1 {
  color: #055d90;
  font: normal 25px Georgia, Times, serif;
  margin: 0;
  font-weight: bold;
  padding: 0 0 0px 0;
  line-height: 39px;
  margin-top: 0;
}
.header p {
  color: #cf373e;
  font: normal 17px Georgia, Times, serif;
  margin: 0;
  padding: 0;
  line-height: 12px;
  font-style: italic;
}
.custinfo h1 {
  color: #FFFFFF;
  font: normal 25px Tahoma, Times, serif;
  background-color: #FF8000;
  padding: 10px 0 10px 0;
}
.custinfo h2 {
  color: #FFFFFF;
  font: normal 15px Tahoma, Times, serif;
  background-color: #707070;
  padding: 0 0 0 0;
}
.table {
  border-collapse: collapse;
}
.table td {
  margin: 0;
  padding: 0;
  display: block;
}
h1,
h2 {
  margin: 0;
}
<table align="left" width="100%" class="table">
  <tr>
    <!--header-->
    <table class="table" cellpadding="0" cellspacing="0" width="100%" style="border-collapse: collapse;  border-spacing: 0; margin-top: 0;">
      <tr>
        <td valign="top">
          <img src="images/logo.gif" style="display: block; border: 0" alt="" width="200" height="100">
        </td>
      </tr>
      <tr>
        <td valign="top" align="middle" class="header" width="100%">
          <h1>Order</h1>

        </td>
      </tr>
    </table>
    <table class="table" cellpadding="0" cellspacing="0" width="100%" style="border-collapse: collapse;  border-spacing: 0;">
      <tr class="custinfo">
        <td width="50%">
          <h1>[DISTRIBUTOR NAME]</h1> 
        </td>
        <td align="middle">
          <h1>[ORDER DATE]</h1>

        </td>
      </tr>
    </table>
    <table class="table" cellpadding="0" cellspacing="0" width="100%" style="border-collapse: collapse;  border-spacing: 0;">
      <tr class="custinfo">
        <td>
          <h2>PO# [PO NUMBER]</h2> 
        </td>
        <td>
          <h2>Customer [COMPANY NAME]</h2>

        </td>
        <td>
          <h2>Total Order [TOTAL ORDER]</h2>

        </td>
      </tr>
      <tr class="custinfo" style="margin:0">
        <td>
          <h2>PO# [PO NUMBER]</h2> 
        </td>
        <td>
          <h2>Customer [COMPANY NAME]</h2>

        </td>
        <td>
          <h2>Total Order [TOTAL ORDER]</h2>

        </td>
      </tr>
    </table>

引用:Margin collapsing

关于html - 删除表格行之间的间距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29630995/

相关文章:

jquery - 向上滑动页脚

php - 居中 div 无法正常工作

html - 垂直对齐两个不同大小的标题

javascript - fadein/out slow 没有 "slow"效果

iOS 上的 HTML 电子邮件签名 - 图像未显示。

html - 如何使用 HTML 内联样式缩进段落的第一行?

html - 电子邮件背景图像用作 URL 但不用作目录

html - IE 7/8/9 中#main div 背景下的下拉菜单

javascript - 可以在外部 JS 文件上加载传单吗?

javascript - iOS网络应用程序 "failed to parse response"