3 ms·
The reason why you have to write HTML like it's 1999 has nothing to do with "the email spec" not having evolved. The MIME RFCs are perfectly capable of supporti
by felixfbecker 3y ago
The reason why you have to write HTML like it's 1999 has nothing to do with "the email spec" not having evolved. The MIME RFCs are perfectly capable of supporting modern HTML and even any alternative representation (that's where MIME types come from!). The reason is exactly the lack of innovation in incumbent email clients — Outlook for Windows still uses the Microsoft Word HTML rendering engine from the nineties and Google Mail's sanitization allowlist is so aggressive that it filters out almost all modern CSS and HTML. And of course, all these clients support only text or HTML.
The most modern email client in terms of HTML/CSS support — by miles — is Apple Mail (on both macOS and iOS), which seems to support almost everything that modern Safari supports [1].
But you have to target the lowest common denominator (Outlook/Gmail), as polyfilling or progressive enhancement in emails are near impossible. GMail was once the client that revolutionized email, but then they started chasing after stuff like AMP for email and acquiring+killing other clients instead of just keeping up with standards.
Email could be such a nice technology if Google and Microsoft evolved their email clients with the same ambition as they evolved their web browsers.
[1] https://www.caniemail.com/scoreboard/ https://www.caniemail.com/scoreboard/
- liendolucas 3y agoThe problem if I understand correctly is that email was never intended to support embedded HTML but plain text (just as HTML was never intended to evolve to what it is today, beyond using it for sharing scientific information). I can't recall where I read it but sending a page to be rendered in an email is considered an aberration and one of the reasons to do that is for advertising/spam (and now also scam) purposes.
- ljm 3y agoI would still call it 'the spec' though because the RFC doesn't mean shit when incumbent mail providers are refusing to modernise email. The spec is just the most compatible way to send an HTML email. All that's required is a static subset of CSS that omits stuff like dynamic imports, the use of `url` in any attribute, animations and transitions, but allows for better layout options than tables and inline style tags.