mcdanlj
(Michael K Johnson)
1
在九月份发送的电子邮件摘要中,我在 Gmail 中看到它们的样式如下:
然后在十二月初发送的摘要中,我看到它们更窄但居中:
在十二月下旬发送的摘要中,我看到它们更窄且右对齐:
我没有对电子邮件样式进行任何更改,保持了其出厂时的状态,并且我一直在关注 tests-passed 上的所有发布。
我在 ProtonMail 中没有看到这些差异;它们在整个时间段内看起来都一样。
我知道电子邮件 HTML 格式是一个混乱的问题,并且我意识到围绕电子邮件格式测试有一个完整的服务行业(例如 Litmus 的电子邮件测试服务)。但我很想知道这是否是一个故意的更改,还是其他修复的副作用,或者是“Gmail 随机变化”……
5 个赞
Falco
(Falco)
2
我也可以在我的 Gmail 的摘要中重现此问题。
由于 @awesomerobot 自上次更新以来没有接触过此代码
我真的不知道为什么会发生这种情况。有什么想法吗 @awesomerobot?
4 个赞
我给自己发送了 Meta 的测试摘要,在 Gmail 中仍然居中显示……我猜可能是有一个我没有在测试中看到的条件内容块,在之前的更改中被遗漏了,导致布局偏移……@Falco 你能转发一封你能看到问题的邮件吗?
1 个赞
Falco
(Falco)
4
已发送 
哦,你这么一说,我想起来了,这似乎是由年度审查主题引起的!
2 个赞
ahhh yes
— 当内容太长时,邮件会被 Gmail 截断:
在未被截断的电子邮件中,td width="650" 的左侧和右侧有一个空的 td(td width="650" 包含内容,左右的 td 会均等调整宽度以填充剩余空间,从而使内容居中)
当电子邮件被截断时,右侧的 td 不存在:

……因此左侧的 td 会调整以填充可用宽度,并将内容 td 推到最右边……
我猜我可以修复这个问题,方法是让电子邮件中的每个内容块独立居中,然后在电子邮件被截断的情况下,可能只有被截断的部分对齐不正确……
3 个赞
mcdanlj
(Michael K Johnson)
7
啊哈!我确认当我打开右对齐的十二月下旬邮件(在我的例子中是“年度回顾”之前)并点击“查看完整邮件”时,它确实显示为居中。
真是个奇怪的、不妙的 Gmail 渲染错误。当然,这也解释了为什么它在 ProtonMail 上没有显示。
需要说明的是,我问这个问题并不是暗示有任何义务去修改它来规避 Gmail 的错误,我只是很感激能明白发生了什么。
3 个赞
我刚刚解决了电子邮件问题,它已经恢复正常工作了,我进行了一些测试,发现我的 Gmail 中显示的内容就像那样,全部靠右。
有什么建议的修复方法吗?
目前电子邮件通过在开头和结尾添加空白列来居中,当结尾被裁剪时,开头的容器会将内容推向一侧。修复方法是将每个部分分开,使其独立居中,这样当电子邮件被裁剪时,只有最后一部分会错位。这有点乏味,但我们最终会完成的。
另一种可能的解决方法是删除摘要中的大量内容,使其永远不会长到足以让 Gmail 裁剪。
1 个赞
我接受一个简短的摘要,如何管理它,我看不到它作为一个模板?
1 个赞
我刚刚合并了一个更新,这个更改比我预期的要容易。这应该可以避免在 Gmail 中布局过长时出现的大部分布局中断问题。
它不像其他模板那样是可编辑的模板,它在这里的 Discourse 源代码中:discourse/app/views/user_notifications/digest.html.erb at main · discourse/discourse · GitHub
3 个赞