Why NOT to use HTML in E-mail

Why not use HTML to format e-mail messages? The short answer is: it's a dumb way to do it.

Proper formatting

You may think you want to format a message so it is nicely displayed. But HTML can't do that. The hypertext rendering engine used by your mail recipient will almost surely format the message differently than the way you want. It will probably use different fonts, and arrange things on the screen differently from the way the formatted message appears on your screen.

That's because HTML is designed to be flexible, so it's full of work-arounds. If you don't have the same fonts installed as the addressee has, some other fonts will be used instead. If the reader's screen width is different from yours, the text and pictures will be rearranged on the virtual page to fit. Consequently, you have almost no control over the actual appearance of the result.

Besides, different rendering engines will format the document differently; there are complicated hacks used on commercial Web pages to make things look sort of the same with all browsers. (That's why those dot-com Web pages take so long to load: they're full of extra HTML markup and ECMA-script coding to fudge things to look roughly the same on everybody's computers.)

If you really want to have your readers see the page formatted exactly the way you want, you should be sending them a PDF file, not HTML.

Special characters

But maybe your reason for using HTML was not formatting, but special characters. Sometimes you need (or, at least want) to use things like the “degree” sign [°]. Or you need to include mathematical symbols, like ≠ or ≤ or ∞, or even the schoolboy's division sign, ÷ ; or Greek letters like α, β, and γ; or accented letters, like á, è, ü, and ø ; or symbols used in typesetting, like the section sign, § , and paragraph mark, ¶ ; or symbols used in commerce, like ® or ™. Well, you know there are “named entities” for these things in HTML; so you think that's the way to go.

But in fact, these things can be represented in good old Plain Text, provided that you use Unicode (i.e., UTF-8 encoding). In fact, that's what I've done here in this page: it's all encoded in UTF-8, and the special symbols used above are all properly displayed (at least, on my screen) without using the HTML entities for them. [Furthermore, I can type them directly from my keyboard by using the Compose Key.]

So HTML isn't needed in order to use these symbols.

Filespace and bandwidth considerations

My main objection to the use of HTML in email is the bloat it introduces. Most mail user-agents introduce the HTML version as a multipart attachment in addition to the plain-text version of the message. But the HTML markup typically uses as many bytes as the original text itself; so adding this makes the whole mail file about three times as long as the plain text alone. This uses up bandwidth on the Net, and it chews up filespace on my computer.

Please, don't use HTML in email.


Copyright © 2013 Andrew T. Young

Back to the . . .
GF reading page

or the GF pictures page

or the main mirage page

or the GF home page

or the website overview page