0

I can send an email from JavaScript like:

window.location = "mailto:joe@blogs.com&body=Hello world";

And the user's default mail client (which will always be outlook for this purpose) opens with a pre-populated email that they can edit, then send, like this:

enter image description here

Now, I want to style the email to a basic level - adding links, text color, underlining etc.

My intention was to do this by adding HTML markup to the body, like this:

window.location = "mailto:joe@blogs.com&body=<html><body><h1>Hello world</h1></body></html>";

at the very least I expected to see the same result as before, implying that the client does not support that particular tag, but outlook just renders the tags as plain text, like this:

enter image description here

And even though outlook's default format is HTML, I also tried setting the content-type specifically, like this:

window.location = "mailto:joe@blogs.com&subject=hi&body=<html><body><h1>hello world</h1></body></html>&MIME-VERSION=1.0&Content-Type=text/html; charset=ISO-8859-1";

but get the same result as before.

I know the target version of outlook is capable of rendering HTML, because that's the default format, and from within the UI I can embolden, add links, etc, but how do I encode this information in a mailto: link and ensure that outlook renders it (where user settings permit, of course)

Paul
  • 3,318
  • 8
  • 36
  • 60

1 Answers1

2

The Mailto format does not support HTML emails. Outlook used to allow it before 2003, but to become compliant with the mailto: standard they removed that functionality.

dhalik
  • 455
  • 3
  • 11