html写邮件兼容outlook心得

4,114 阅读2分钟

2020年06月12日 更新

解决部分windows版本的outlook2016产生问题

img标签

img标签的图片,在outlook的windows客户端中显示问题:

  1. 使用过大的图片,如在固定宽度540px的table中需要宽度540px的图,UI提供了2160px的图,会默认显示100%,过大;
  2. 通过width="540"修改后,在outlook的windows版本客户端中html宽度显示非540p时,使用的这个img无法贴边html;

解决办法:

  1. 修改图片的高宽,如果html宽度540px,需要img贴边,则将图片修改为540px的大小;
  2. img标签中改为width="100%"

通过上述方法修改后,可以解决outlook2016的windows版本,部分存在不贴边的问题

激活按钮的高度不生效

  1. 问题:在激活按钮的实现中,td按钮的height属性不生效,导致激活按钮显示高度很小,只能根据字的大小来调整高度
  2. 解决方法:在a标签内部的table标签中在文字激活账户所在行的上下各加一行tr,内容字体颜色调整为背景色,大小根据UI需要进行计算

注意点

1.尽量使用'table+tr+th+td'的组合,使用'strong'标签加粗,'span'标签分离,不使用div

2.'table'的'padding'会被th的同意'padding'方向覆盖

3.'table'中的'style'样式,'padding'不生效

4.'style'样式中格式语法严格,不能有多余的符号如:;

5.'img'标签的样式,使用属性添加,如width,在outlook中,style:"width:50px"不生效,使用width="50"才能生效

激活按钮实现

整个'tb'标签生效,不仅仅是'a'标签可以跳转链接,参考'greenmangaming'的激活邮件中的按钮实现

<table>
    <tbody>
        ...
        <tr>
            <td align="center" style="background-color: #ffffff;">
                <a href="https://..." style="text-decoration: none;" target="_blank">
                    <table bgcolor="#5373DB" height="52" width="100%" border="0" cellpadding="0" cellspacing="0">
                        <tbody>
                            <tr>
                                <td style="font-size: 16px; letter-spacing: 0.8px; text-transform: uppercase; text-align: center; width: 100%; border-radius: 4px;">
                                    <span>
                                        <a href="https://..." style="text-decoration: none; color: #ffffff;" target="_blank">
                                            激活帐户
                                        </a>
                                    </span>
                                </td>
                                <td style="padding-right: 22px;">
                                    <img src="https://..." width="22" />
                                </td>
                            </tr>
                        </tbody>
                    </table>
                </a>
            </td>
        </tr>
        ...
    </tbody>
</table>

参考链接

HTML Email 编写指南

www.ruanyifeng.com/blog/2013/0…

实现竖直分割线

    <hr color="#D5DAE7" size="1px" />

blog.csdn.net/kangmingyan…

HTML 邮件兼容问题与解决方案

blog.csdn.net/weixin_3429…