Gmail中渲染的邮件摘要样式是否已更改?

在九月份发送的电子邮件摘要中,我在 Gmail 中看到它们的样式如下:

然后在十二月初发送的摘要中,我看到它们更窄但居中:

在十二月下旬发送的摘要中,我看到它们更窄且右对齐:

我没有对电子邮件样式进行任何更改,保持了其出厂时的状态,并且我一直在关注 tests-passed 上的所有发布。

我在 ProtonMail 中没有看到这些差异;它们在整个时间段内看起来都一样。

我知道电子邮件 HTML 格式是一个混乱的问题,并且我意识到围绕电子邮件格式测试有一个完整的服务行业(例如 Litmus 的电子邮件测试服务)。但我很想知道这是否是一个故意的更改,还是其他修复的副作用,或者是“Gmail 随机变化”……

5 个赞

我也可以在我的 Gmail 的摘要中重现此问题。

由于 @awesomerobot 自上次更新以来没有接触过此代码

我真的不知道为什么会发生这种情况。有什么想法吗 @awesomerobot

4 个赞

我给自己发送了 Meta 的测试摘要,在 Gmail 中仍然居中显示……我猜可能是有一个我没有在测试中看到的条件内容块,在之前的更改中被遗漏了,导致布局偏移……@Falco 你能转发一封你能看到问题的邮件吗?

1 个赞

已发送 :mailbox_with_mail:

哦,你这么一说,我想起来了,这似乎是由年度审查主题引起的!

2 个赞

ahhh yes :100: — 当内容太长时,邮件会被 Gmail 截断:

在未被截断的电子邮件中,td width="650" 的左侧和右侧有一个空的 tdtd width="650" 包含内容,左右的 td 会均等调整宽度以填充剩余空间,从而使内容居中)

当电子邮件被截断时,右侧的 td 不存在:

Screenshot 2023-01-17 at 1.03.56 PM

……因此左侧的 td 会调整以填充可用宽度,并将内容 td 推到最右边……

我猜我可以修复这个问题,方法是让电子邮件中的每个内容块独立居中,然后在电子邮件被截断的情况下,可能只有被截断的部分对齐不正确……

3 个赞

啊哈!我确认当我打开右对齐的十二月下旬邮件(在我的例子中是“年度回顾”之前)并点击“查看完整邮件”时,它确实显示为居中。

真是个奇怪的、妙的 Gmail 渲染错误。当然,这也解释了为什么它在 ProtonMail 上没有显示。

需要说明的是,我问这个问题并不是暗示有任何义务去修改它来规避 Gmail 的错误,我只是很感激能明白发生了什么。:tada:

3 个赞

我刚刚解决了电子邮件问题,它已经恢复正常工作了,我进行了一些测试,发现我的 Gmail 中显示的内容就像那样,全部靠右。

有什么建议的修复方法吗?

目前电子邮件通过在开头和结尾添加空白列来居中,当结尾被裁剪时,开头的容器会将内容推向一侧。修复方法是将每个部分分开,使其独立居中,这样当电子邮件被裁剪时,只有最后一部分会错位。这有点乏味,但我们最终会完成的。

另一种可能的解决方法是删除摘要中的大量内容,使其永远不会长到足以让 Gmail 裁剪。

1 个赞

我接受一个简短的摘要,如何管理它,我看不到它作为一个模板?

1 个赞

我刚刚合并了一个更新,这个更改比我预期的要容易。这应该可以避免在 Gmail 中布局过长时出现的大部分布局中断问题。

它不像其他模板那样是可编辑的模板,它在这里的 Discourse 源代码中:discourse/app/views/user_notifications/digest.html.erb at main · discourse/discourse · GitHub

3 个赞