13

我想知道是否应该在文本电子邮件中应用自动换行?那么 HTML 电子邮件呢?如果是这样,你通常会用什么字符换行?

4

9 回答 9

13

RFC 2646说:

Text/Plain 媒体类型是 Internet 电子邮件的最低公分母,行数不超过 997 个字符(按照惯例,通常不超过 80 个)

另一个流行的标准是在 72 个字符处换行。这可以追溯到许多控制台应用程序(如 EDIT 和许多 BBS 界面),它们在 ASCII“窗口”中显示文本,包括边框和滚动条,允许显示的字符略少于 80 个。

于 2009-01-19T21:46:06.237 回答
6

通常在 72 处换行(80 也很常见,但这意味着引用时它将超过 80)以处理至少一两个级别的引用。有“text/flowed” MIME 类型,这意味着客户端将在窗口边界处自动包装文本,但没有多少客户端支持它。只需将您的编辑器设置为 72 换行,大多数人都可以安全阅读。

编辑:确切的类型是text/plain加上 format=flowed这样的:

Content-Type: text/plain; format=flowed

有关解释,请参阅rfc2646

应该避免使用 HTML 邮件 IMNSHO,并不是每个人都在浏览器中阅读邮件或拥有支持 HTML 的邮件客户端。大多数使用 HTML 的理由(用下划线、粗体等来丰富邮件)都可以模拟。HTML 不需要包装,因为客户端会适应窗口大小。

HTML 的替代方案是“text/enriched”MIME 类型,它为您提供了 HTML 邮件的大部分优点而无需麻烦,但同样,可能并非所有地方都支持。

有关文本/丰富的内容,请参见此处

于 2009-01-19T21:56:52.347 回答
6

谷歌说结果 1 - 10 大约...

3,160 for +word +wrap +email +"80 characters"
2,820 for +word +wrap +email +"50 characters"
1,790 for +word +wrap +email +"60 characters"
1,720 for +word +wrap +email +"70 characters"
1,540 for +word +wrap +email +"100 characters"
1,250 for +word +wrap +email +"65 characters"
1,120 for +word +wrap +email +"40 characters"
  962 for +word +wrap +email +"75 characters"
  836 for +word +wrap +email +"72 characters"
于 2009-01-19T21:57:10.770 回答
2

我经常发现自己开始使用以下电子邮件回复:

[Format recovered--see http://www.lemis.com/grog/email/email-format.php]

我从 Greg Lehey 那里得到的。该页面的一部分说:

显然,必须有某种方式来指定不应包装消息文本。那是文本/纯文本。有允许包装的特殊 MIME 附件类型,尽管我仍然认为这是一个坏主意。如果您指定您的消息可能会被包装,那么您就是在假设接收者的屏幕看起来像什么。即使你在某些时候是对的,你也不可能一直都是对的。例如,一个人可能有一个 200 个字符宽的屏幕,以便能够显示长日志文件条目,但他不希望看到那么长的文本。

于 2009-01-20T01:14:01.450 回答
2

RFC 5322

https://www.rfc-editor.org/rfc/rfc5322#section-2.1.1

2.1.1。行长限制

该规范对一行中的字符数有两个限制。每行字符必须不超过 998 个字符,并且应该不超过 78 个字符,不包括 CRLF。

998 个字符的限制是由于发送、接收或存储 IMF 消息的许多实现中的限制,这些消息根本无法处理一行中超过 998 个字符。为了健壮性,接收实现可以很好地处理一行中任意大量的字符。然而,有太多的实现(符合 [RFC5321] 的传输要求)不接受包含超过 1000 个字符的消息,包括每行的 CR 和 LF,因此不创建此类消息对实现很重要。

更保守的 78 个字符推荐是为了适应显示这些消息的用户界面的许多实现,这些消息可能会截断或灾难性地换行,每行超过 78 个字符的显示,尽管这样的实现不符合本规范的意图(以及 [RFC5321] 的意图,如果它们实际上导致信息丢失)。同样,即使对消息施加了这种限制,为了健壮性,显示消息以处理一行中任意大量字符(当然至少达到 998 个字符的限制)的实现也有责任。

另请参阅:RFC2045、RFC2046、RFC2047、RFC2049、RFC4289 和 RFC6838 以了解 MIME 规范。

阅读 RFC 很有趣。你知道你喜欢它:-)

于 2013-02-17T00:50:06.597 回答
1

JavaMail这样的优秀邮件 API将为您做到这一点。理想情况下,您不必明确考虑这个问题。

于 2009-01-20T15:38:57.180 回答
0

一般来说,您应该以 80 或更少的价格换行,以让昏暗的客户在不换行的情况下进行报价。

于 2009-01-19T21:47:46.843 回答
0

没有使用换行,直到我切换到 mutt/xterm(从不回头)。

于 2009-01-19T21:49:16.433 回答
0

在第 72 个位置之前的第一个空格字符处换行,如果没有,则在第 72 个位置处换行。在 Eudora 中,当我使用它时,约定是在行尾留一个空格表示它已被换行,因此它会向接收客户端发出信号,根据行的宽度在任何需要的地方重新排列段落客户的窗口。我不确定当前的电子邮件客户端是否属于这种情况。

于 2009-01-19T21:55:07.873 回答