我在HTML文档中有几个mailto链接。

我可以在href的mailto:部分插入HTML格式的正文吗?

Mail me

注意,(2016)在iOS中,添加和标签可以非常好地实现简单的斜体、粗体格式。

有一个完全相同的想法,研究了一段时间。我试图在消息体中嵌入一个远程

。mailto指令需要进行url编码才能工作。Thunderbird的结果是,HTML主体出现在字面上,包含所有

指令和所有指令。我想这是雷鸟和大多数邮件客户机的安全问题——他们解析传入的邮件到内容,这样它就不会做任何可疑的事情。

我能找到的最好的信息来自这个页面,zapossphere.com/html-email-links-code.。下面给出了一个列表:"大多数其他网站没有提到的其他很酷的定制!"帮了我很多忙。

您可以将电子邮件的每个部分设置为基本文本。关于HTML格式不可能存在的局限性,我构建了一个工具来定制mailto中的各个字段:mailto.now.sh。

正如您在RFC 6068中看到的,这根本不可能:

The special "body" indicates that the associated

is the body of the message. The"body" field value is intended to

contain the content for the first text/plain body part of the

message. The"body" pseudo header field is primarily intended for

the generation of short text messages for automatic processing (such

as"subscribe" messages for mailing lists), not for general MIME

bodies.

@乔布的回答仍然正确。废除2368的RFC6068仍然说正文是纯文本。

如果您对这个答案感到失望,请继续阅读:stackoverflow.com/a/46699855/256272(tl;dr.eml files)

不,根本不可能。

不完全正确。虽然支持非常少,但其他答案表明,在iOS和IE+ActiveX+Outlook(urgh,yuck)的组合中,某些有限的HTML是可能的。

虽然不可能使用HTML来格式化电子邮件正文,但是您可以像前面建议的那样添加换行符。

如果您能够使用javascript,那么"encodeuricomponent()"的用法可能如下…

var formattedBody ="FirstLine

Second Line

Third Line";

var mailToLink ="mailto:x@y.com?body=" + encodeURIComponent(formattedBody);

window.location.href = mailToLink;

电子邮件客户端可以运行嵌入式javascript吗?运营商说这是一封电子邮件,而不是一个mailto:链接的网页。

谢谢,在Rails中,您可以使用raw("text

more text

\t")函数来封装文本,并将其转换为电子邮件正文的换行符和制表符。

这对我很有效,从chrome"mailto"发送到outlook。请注意,您只能对正文文本进行编码,而不能对整个mailto字符串进行编码;并且在之前/之后不需要空格。

我试过用粗体字。它不起作用。支持哪些其他转义序列?

我喜欢这种方法,这里有一个jsFiddle可以看到它的实际应用:jsFiddle.net/oligray/5uosngy4

您也可以使用%0a作为换行符,所以不需要从javascript中进行。

在Rails 5中,u或url_encode方法将转换换行符,并使字符串通常是URL安全的。stackoverflow.com/a/2353752/4686951

我用过这个,它似乎与Outlook一起工作,而不是使用HTML,但是至少当正文作为输出添加时,您可以用换行符来格式化文本。4

所以"%0d"是换行符。编码标签的代码等价物是什么?

%0d是一个换行符,它是ctrl-m,一个制表符是ctrl-i,它是%09。看看这样的ASCII图表[asciitable.com/index/asciifull.gif]。控制字符从1到31。@大眼睛的学生

执行此操作时,似乎删除了任何签名。

谢谢@andy我为Gmail客户工作

%0A将是

这不是HTML正文!

这不完全是您想要的,但是可以使用现代的javascript在客户端创建一个EML文件,并将其传输到用户的文件系统,该系统将在其邮件程序中打开一封包含HTML的富电子邮件,如Outlook:

https://stackoverflow.com/a/27971771/8595398

这是一封包含图片和表格的电子邮件的jsfidle:https://jsfiddle.net/seanodotcom/yd1n8lfh/

HTML

To: User

Subject: Subject

X-Unsent: 1

Content-Type: text/html

body, html, table {

font-family: Calibri, Arial, sans-serif;

}

.pastdue { color: crimson; }

table {

border: 1px solid silver;

padding: 6px;

}

thead {

text-align: center;

font-size: 1.2em;

color: navy;

background-color: silver;

font-weight: bold;

}

tbody td {

text-align: center;

}

PAST DUE INVOICE

Invoice #Days OverdueAmount Owed

OU8129$4395.00OU8129$4395.00OU8129$4395.00

Create file

Download

JavaScript

(function () {

var textFile = null,

makeTextFile = function (text) {

var data = new Blob([text], {type: 'text/plain'});

if (textFile !== null) {

window.URL.revokeObjectURL(textFile);

}

textFile = window.URL.createObjectURL(data);

return textFile;

};

var create = document.getElementById('create'),

textbox = document.getElementById('textbox');

create.addEventListener('click', function () {

var link = document.getElementById('downloadlink');

link.href = makeTextFile(textbox.value);

link.style.display = 'block';

}, false);

})();

现在这是一个奇特的想法

好主意,但只是为了记录,在最新的苹果邮件上,这个文件将打开,但不能编辑/发送,它就像一个已发送的电子邮件记录。

使用Apple Mail(11.2),打开.eml文件后,可以从菜单(shift-cmd-d)中选择message/send again以将电子邮件置于编辑模式。

有些事情是可能的,但不是全部,比如说你想要换行,而不是使用使用%0D%0A。

例子:

这不是HTML…静止文本。

如果您使用$mailheader.="content-type:text/html;charset=iso-8859-1,则不会这样做

";

@斯蒂芬考夫曼-你不是发送电子邮件的人,而是点击链接的客户。这意味着你不知道电子邮件客户端是如何设置的。您不知道它的头是如何设置的。这对一些电子邮件客户有效,而对其他客户无效。

谢谢@stephenkaufman!

值得指出的是,在iPhone上的Safari上,至少可以在、和等基本HTML标签(理想情况下,在其他情况下,您不应该再使用这些标签,而更喜欢css)中的body参数中插入mailto:似乎确实有效——它们在电子邮件客户端中很受欢迎。我还没有做过详尽的测试,看看其他移动或桌面浏览器/电子邮件客户端组合是否支持这种功能。这是否真的符合标准也值得怀疑。不过,如果您正在为该平台构建,可能会很有用。

正如其他反应所指出的,在将其嵌入mailto:链接之前,还应该在整个身体上使用编码成分。

是的,在iOS中添加简单的粗体、斜体标签确实非常有效。

在iOS上,我不能用

发送正确的电子邮件-在Gmail中,我在邮件中看到base64。

可以输入unicode值来插入换行符(例如:\u0009),但是HTML标记有不同程度的支持,应该避免。

我是这样工作的:

var newLine = escape("

");

var body ="Hello" + newLine +"World";

输出为:

Hello

World

以下是如何将所有内容添加到mailto链接:

Shipping Request

每个组件都由符号(&)分隔。只有初始电子邮件地址后的第一个组件有问号(?)在与号之前。

URL编码是关键!所以以你的身体为例,而不是

href='mailto:me@me.com?subject=Me&body=ME'

…你可以尝试:

href='mailto:me@me.com?subject=Me&body=%3cb%3eME%3c%2fb%3e'

这是你可以尝试的另一条路线。创建一个javascript函数来打开一个ActiveX对象。这具有只在IE和Outlook中工作的不幸限制,并且可能导致页面显示ActiveX警告。但如果你能接受这些警告,它就可以做到。以下是您可以从中提取的工作样本:

function OpenOutlookNewEmail()

{

try

{

var outlookApp = new ActiveXObject("Outlook.Application");

var nameSpace = outlookApp.getNameSpace("MAPI");

mailFolder = nameSpace.getDefaultFolder(6);

mailItem = mailFolder.Items.add('IPM.Note.FormA');

mailItem.Subject ="Me";

mailItem.To ="me@me.com";

mailItem.HTMLBody ="ME";

mailItem.display(0);

}

catch (e)

{

alert(e);

// act on any error that you get

}

}

email

我正在努力理解这是如何回答作战问题的。

那是因为根本没有。几乎想投反对票。

它没有。它只是一堆从第三方网站复制/粘贴的无关紧要的相关内容,甚至连自己的字符编码都不能正确。

事实上,某人(或某物)投了反对票,这是我最关心的。

对于那些仍在挣扎的人,我添加了一个关于如何将此应用于海报的确切问题的注释。我也在本地测试过,它确实有效。然而,不同的电子邮件客户机如何处理这件事是另一回事,可能取决于本地设置。我不应该认为这是显而易见的。

URL编码不起作用。在IE 9中用Outlook邮件客户端测试。

这是在你的身体中获得特殊字符的正确方法,但它不会像对待HTML那样对待内容。你的身体里只会有HTML标签。

在html中电子邮件链接,关于电子邮件:与HTML正文的mailto链接相关推荐

  1. 在Python中使用SMTP发送电子邮件

    Python中有内置的smtplib模块,完成一封邮件的发送,需要做很多准备工作.第三方的py_smtp这个包也是基于smtplib的,在Python中使用py_smtp发送电子邮件非常方便,只要填写 ...

  2. outlook电子邮件解析_在Outlook中按会话对电子邮件进行排序

    outlook电子邮件解析 Do you prefer the way Gmail sorts your emails by conversation?  Here's how you can use ...

  3. 轻松在Google Chrome浏览器中管理您的电子邮件

    Are you looking for an easy way to be notified of new e-mails and access/manage your account? Then y ...

  4. wordpress模板_如何在WordPress中添加漂亮的电子邮件模板

    wordpress模板 Do you want to change the appearance of emails sent by your WordPress site? By default, ...

  5. SQL 服务器勒索病毒XTBL、dharma、wallet后缀,会在文件名中添加联系的电子邮件地址...

    服务器勒索病毒XTBL.dharma.wallet后缀,会在文件名中添加联系的电子邮件地址. 以下列出相关黑客的的邮件地址: bitcoin143@india.com amagnus@india.co ...

  6. PHP查找数据库中的用户,php-在数据库中查找现有的电子邮件和用户...

    在另一个用户注册时,如何检查mysql数据库中是否已存在电子邮件或用户名,因此我可以停止注册过程,并可能建议新用户在数据库中不存在另一个2/3新用户名. 所以我尝试解决这个问题,我只能得到一种检查数据 ...

  7. mac mail 删除邮件服务器,这是在Mac上的Mail中自动删除垃圾电子邮件的方法

    有关于这是在Mac上的Mail中自动删除垃圾电子邮件的方法现在一些变化大家兴趣很大,既然要对这是在Mac上的Mail中自动删除垃圾电子邮件的方法了解清楚,小编特地给大家带来具体情况. 随着时间的推移, ...

  8. outlook服务器恢复用户邮件,如何恢复Outlook中永久删除的电子邮件

    大部分人可能都有过这种经历,在清除Outlook收件箱中的垃圾邮件时,不慎一并永久删除了所有的重要邮件,损失非常严重.本教程将着重于介绍恢复Outlook中永久删除的电子邮件的操作步骤. 解决方案1: ...

  9. 要求用户输入一个电子邮件。验证电子邮件格式是否正确。 电子邮件格式:XX@XX.com 实现方式:该字符串中必须包含@字符串和.字符串。 @不能出现在第一个位置,并且@位置大于.;

    要求用户输入一个电子邮件.验证电子邮件格式是否正确. 电子邮件格式:XX@XX.com 实现方式:该字符串中必须包含"@"字符串和"."字符串. "@ ...

最新文章

  1. 互联网项目管理要点(转)
  2. C++单元测试学习总结9
  3. 为什么做Web开发要选择PHP
  4. Php Laravel框架 多表关系处理 之 Eloquent一对多关系处理
  5. python 函数递归一次增加一次变量_python函数局部变量、全局变量、递归知识点总结...
  6. java两个字符串前缀_java – 找到两个字符串的最长公共前缀
  7. extends 抽象方法_关于abstract抽象类的理解
  8. python鼠标移动事件_给turtle屏幕增加鼠标移动事件核心代码
  9. 跳转类内方法快捷键_想要快速编写代码,你得熟悉这些快捷键!
  10. perfdog 性能狗之Jank
  11. Yii --Command 任务处理
  12. 理解 Visual C++ 应用程序的依赖项(msdn)
  13. 基本 SQL 之增删改查
  14. 任天堂xci文件提取romfs
  15. 平房误差函数_最小平方误差准则函数.ppt
  16. 【SpringMVC】编程式事务控制,基于 XML 的声明式事务控制,基于注解的声明式事务控制
  17. Dzz Desktop1.2 Demo
  18. linux系统部署ffmpeg视频转码环境及使用方法
  19. 获取SYSTEM Shell:Citrix Workspace软件命名管道校验客户端漏洞分析
  20. Python 已知三角形三边求三角形面积

热门文章

  1. CMCC-EDU一个帐号,多设备共享解决方案
  2. 【渝粤教育】广东开放大学 管理心理学 形成性考核 (45)
  3. IE安全系列:脚本先锋(I)
  4. [UVA 11600] Masud Rana
  5. IIS 收到了请求;但在处理请求过程中出现内部错误。此错误的根本原因取决于处理该请求的是哪一个模块以及出现此错误时工作进程中出现了何种情况。
  6. 简单工厂模式和抽象工厂模式
  7. 2017蓝桥杯之分巧克力
  8. java proguard_使用proguard混淆java9代码
  9. 内部存储空间不足_还出现“手机存储空间不足”的提示?那是你不知道这个!...
  10. html5超高分辨率,4K分没用?为何投影玩不起超高分辨率