我想知道是否应该在文本电子邮件中应用自动换行?那么 HTML 电子邮件呢?如果是这样,你通常会用什么字符换行?
9 回答
RFC 2646说:
Text/Plain 媒体类型是 Internet 电子邮件的最低公分母,行数不超过 997 个字符(按照惯例,通常不超过 80 个)
另一个流行的标准是在 72 个字符处换行。这可以追溯到许多控制台应用程序(如 EDIT 和许多 BBS 界面),它们在 ASCII“窗口”中显示文本,包括边框和滚动条,允许显示的字符略少于 80 个。
通常在 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 邮件的大部分优点而无需麻烦,但同样,可能并非所有地方都支持。
有关文本/丰富的内容,请参见此处。
谷歌说结果 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"
我经常发现自己开始使用以下电子邮件回复:
[Format recovered--see http://www.lemis.com/grog/email/email-format.php]
我从 Greg Lehey 那里得到的。该页面的一部分说:
显然,必须有某种方式来指定不应包装消息文本。那是文本/纯文本。有允许包装的特殊 MIME 附件类型,尽管我仍然认为这是一个坏主意。如果您指定您的消息可能会被包装,那么您就是在假设接收者的屏幕看起来像什么。即使你在某些时候是对的,你也不可能一直都是对的。例如,一个人可能有一个 200 个字符宽的屏幕,以便能够显示长日志文件条目,但他不希望看到那么长的文本。
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 很有趣。你知道你喜欢它:-)
像JavaMail这样的优秀邮件 API将为您做到这一点。理想情况下,您不必明确考虑这个问题。
一般来说,您应该以 80 或更少的价格换行,以让昏暗的客户在不换行的情况下进行报价。
没有使用换行,直到我切换到 mutt/xterm(从不回头)。
在第 72 个位置之前的第一个空格字符处换行,如果没有,则在第 72 个位置处换行。在 Eudora 中,当我使用它时,约定是在行尾留一个空格表示它已被换行,因此它会向接收客户端发出信号,根据行的宽度在任何需要的地方重新排列段落客户的窗口。我不确定当前的电子邮件客户端是否属于这种情况。