在电子邮件中设计tr或td?

时间:2012-08-19 10:37:22

标签: html css email styles html-email

我想更改整行单元格的背景颜色和字体大小。 (使用内联样式,因为我无法使用样式表或<style>代码)

我应该添加哪些元素?我应该在一行<td><tr>代码中添加一次?哪种方式更好?

<tr>
    <td style="background-color:red;font-size:12px">blah blah</td>
    <td style="background-color:red;font-size:12px">blah blah</td>
</tr>

<tr style="background-color:red;font-size:12px">
    <td>blah blah</td>
    <td>blah blah</td>
</tr>

7 个答案:

答案 0 :(得分:1)

设置td上的属性更安全,因为如果您在tr上设置它们,那么任何样式表设置(可能在您的控件之外)在td上会覆盖您的设置。

但是如果您希望控制情况并且知道没有其他样式表设置可以干扰,您可以在tr上设置属性,这在使用style属性时会更短。这样,单元格将继承字体属性,并且它们将具有透明背景(默认),因此tr背景可以通过。

但是,并非所有属性都是继承的。例如,边框属性不是,因此要在单元格上绘制边框,您需要在td元素上设置它们(除非您对table元素上HTML属性的非常有限的可能性感到满意献)。

答案 1 :(得分:1)

我通常将它们应用于细胞,只是为了确保。你可以考虑使用某种服务器端语言,这样可以防止你不得不一遍又一遍地输入它,并且当你想要改变某些东西时就不那么痛苦了。像这样:

<?php
  $tdStyle = 'style="background-color:red;font-size:12px"';
?>

<tr>
 <td <?php echo $tdStyle;?> >blah blah </td>
 <td <?php echo $tdStyle;?> >blah blah </td>
</tr>

或者聪明地工作,这更适合这个。这就是我用的......它看起来像这样:

{$tdStyle = 'style="background-color:red;font-size:12px"'}
<tr>
 <td {$tdStyle}>blah blah </td>
 <td {$tdStyle}>blah blah </td>
</tr>

答案 2 :(得分:1)

你的第一个选择就是答案:

<tr>
    <td style="background-color:red;font-size:12px">blah blah</td>
    <td style="background-color:red;font-size:12px">blah blah</td>
</tr>

第二个选项在Outlook中不起作用。

答案 3 :(得分:1)

当我设计HTML电子邮件时,我将它添加到tr和td中。为了安全起见。另外,作为一些电子邮件客户端的退款,除了css之外还可以添加bgcolor =“”。

答案 4 :(得分:0)

如果您将样式添加到TR标记,那么它将适用于该表的整行, 如果你在TD上添加它,它将仅适用于该TD

我认为为了避免相同的风格一次又一次地写,你可以写在整个tr

答案 5 :(得分:0)

你想把它应用到行,那么为什么要问你是否应该把它应用到TD?

如果你想在行上使用一个样式,请将它应用到TR。如果你想在Cell上使用样式将它应用到TD。 ln-line风格是EVIL !!试着避免它们。

答案 6 :(得分:0)

将样式添加到td或tr应该没问题。内联样式和表格是获取HTML电子邮件的正确方式,否则您将面临与不同浏览器,移动/电子邮件客户端的CSS兼容性问题。