邮件签名的图片是个奇怪的设计题。它很小、被看的次数极多,而且得撑过三个几乎没有别的图片要面对的条件——而尺寸是从这些条件推导出来的,不是来自任何官方规格。
很多邮件客户端在读者点某个按钮之前不会加载远程图片。对一个从来没跟你通过信的人发出的第一封信——而那正是签名最有意义的场合——你的标志有很大概率根本没出现过。
由此得出两个后果。
签名必须以文字的形式读得出来。姓名、职称、公司、电话都要是真正的文字,不能放在图片里。这是最常见也最伤的错误:**把整个签名做成一张图**。被挡掉的时候,收件人看到的是一个空白方框,其他什么都没有。而且那些字没办法选取、没办法复制、搜索找不到,就算加载成功,屏幕阅读器也读不出来。
替代文本不是选配。被挡掉的图片会显示它的 alt 文本,所以 alt="某某公司" 还是能把公司名传达出去。空的 alt 属性什么都传达不了。
现在每一块屏幕都把两个以上的物理像素塞进一个布局像素里。一张“文件尺寸刚好等于显示尺寸”的图,在所有这些屏幕上都是糊的。
解法是标准做法:用 2 倍导出,然后在签名的 HTML 里明确指定显示宽度。一个要显示成 180 像素宽的标志,用 360 导出、显示成 180。
那个宽度一定要写。不写的话图片会以完整的 360 像素呈现,你的签名就变成设计时的两倍大。
那个 600 像素的上限,是大多数邮件版式的构建宽度。再宽就会在手机上出现水平滚动,而那在信件里看起来“坏掉”的程度,是其他任何东西都比不上的。
现在很多邮件客户端用深色背景呈现消息,有些还会自动反转颜色。一个存成 JPG 的标志会把它的白底一起带着,于是在一封深色的信里,它是一个漂浮的明亮白方块。
用透明的 PNG,而且要检查标志在深色上长什么样。深色标志配透明背景会几乎看不见;带一圈细白边的版本,或者一个为深色背景设计的版本,两边都撑得住。
最简单而稳健的答案,是一个在任何背景上都成立的标志——用饱和的中间调,不要有接近白或接近黑的元素。
签名会附在你发出的每一封信上。一年一千封信,一个 300 KB 的签名就是 300 MB 的传输和存储——在你的已发送里,也在每一个收件人的邮箱里。
还有第二个效应:某些系统会把大的签名算进邮件大小上限,于是一个已经接近上限的附件就发不出去,而发件人看不出原因在哪。
目标是每张图 20 KB 以内、整个签名 50 KB 以内。一个 360 像素、纯色构成的 PNG 标志压完只有几 KB;如果你的不是,那它多半是一张存成 PNG 的照片。
链接的图片放在网页服务器上,信件只引用它的网址。消息维持很小,而且你可以一次更新所有地方的标志——但那也正是会被挡掉的那一种。
内嵌的图片跟着消息一起走。它一定显示得出来,但它的重量加在每一封信上,而且某些客户端会把它当成附件显示——于是你的信件带着一个回形针图标抵达,暗示有一份其实不存在的文档。
对大多数人来说链接是比较好的默认;只要把网址维持稳定就好,因为图片一搬家,你发出去的每一封信的签名都会坏掉。