473,383 Members | 1,840 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes and contribute your articles to a community of 473,383 developers and data experts.

Quick way to send HTML Emails in Apple Mail (Mail.app)

digicrowd
4 Nibble


You can make your emails fancy in Mail.app by using Rich Text formatting or even included Stationery. But, a simple way to send your own HTML creation (or any web page for that matter) is to use Safari. Follow these four easy steps.

1. Create the HTML
Layout your HTML code including any images or graphics you'd like to include. In this example, we will make a simple birthday email to add some spice to Dan's inbox for his birthday. We will use a clipart of balloons to give it that birthday fun. Save the html as "myemail.html" for this example.
Expand|Select|Wrap|Line Numbers
  1. <center><div style="display: inline-block; width: 300px; height: 100px; border: 10px dashed #F31A00; margin: 15px; padding: 10px; font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif; color: #337099;  background-color: #F2F100;">
  2. <center><span style="font-weight: bold; font-size: 20px;">Happy Birthday Dan!</span><br /><br /><span style="font-weight: normal; font-size: 18px;">Hope It Is Grand!</span><br /><br /><span style="font-size: 14px;">Love, Aunt Sue.</span></center></div><br /><img src="balloons.png"></center>
  3.  
2. Test out the HTML
Open "myemail.html" in Safari. File -> Open File... or simply drag the saved filed to the Safari application icon or any open Safari browser window. This will allow you to preview what you are wanting to send via email.
3. Into the new message window
If you are happy with what you have and you don't have any images to include, then simple press "command-i" and the web page will be placed directly in a New Message window in Mail.app. If you do have images to include, do a Edit -> Select All (command-a) and then paste it into a New Message window in Mail.app. This will embed an images directly into the email.
4. Send It Out!
Complete who your sending it to and add a subject "Happy Birthday!" and send it off! You can easily send the email to yourself to test it out to make sure it works as you so desired.

Hot Tip: You can do this with any internet web page. Instead of sending someone a link a certain web page, you can just send them the whole page. Give it a try. If you're in Safari, "command-i" this page and send it off to someone.
Jul 31 '08 #1
3 99891
This is good in theory but in practice has a number of limitations related to html emails. In most email readers:

CSS in head <style>...</style> is ignored.
Layers <div>...</div> do not display correctly.
In-line CSS not tied to a handful of tags (in table tags for example) do not work correctly or consistently.
Javascript is not functional.
Form elements are stripped out or modified to display horribly.

With all that in mind, html created for emails must be far simpler than the techniques used in modern Web pages. If you care about the formatting, send it to yourself before sending it to someone else, and don't send it to your email account used for Apple Mail. Apple Mail has one of the best html rendering engines out there, but since most folks do not use it, you can't rely on how it looks in Mail as any indication of how it will look in Outlook, Yahoo, Google, etc.

$.02
Aug 1 '08 #2
pbmods
5,821 Expert 4TB
I maintain the web email system where I work. Here are some observations I have noticed, esp. wrt the previous comment:

CSS in head <style>...</style> is ignored.
This is true, especially in GMail. I know it violates XHTML standards, but you'll need to put your CSS styles in the <body>, and if you can make your CSS inline, that is generally more reliable.

Layers <div>...</div> do not display correctly.
I'm not so sure about that. There are quirks, especially in Outlook '07 (uses the MS Word rendering engine (http://www.campaignmonitor.com/blog/..._design_b.html):
  • Background colors are not applied correctly.
  • Percentage widths are calculated relative to the document, not the parent element.
  • Float doesn't work. At all.

But on the whole, a div displays exactly as you would expect a block-level element to display: with a line break immediately before and after it and 100% width.

In-line CSS not tied to a handful of tags (in table tags for example) do not work correctly or consistently.
This is mainly a problem with Outlook '07 (note: not Outlook '03). Apple's Mail.app, for example, uses Webkit, so everything works the same as it would in Safari.

Javascript is not functional.
This is true of all email clients, presumably as a security precaution.

Form elements are stripped out or modified to display horribly.
This is also true of most email clients. It's generally not a good practice to put a form in an email anyway; it's an email message, not a webpage.

With all that in mind, html created for emails must be far simpler than the techniques used in modern Web pages. If you care about the formatting, send it to yourself before sending it to someone else, and don't send it to your email account used for Apple Mail. Apple Mail has one of the best html rendering engines out there, but since most folks do not use it, you can't rely on how it looks in Mail as any indication of how it will look in Outlook, Yahoo, Google, etc.
This is good advice. You especially want to make sure you test the following clients:
  • Microsoft Outlook 2003
  • Microsoft Outlook 2007 (uses a completely different rendering engine than '03)
  • Apple Mail.app
  • AOL (desktop and web apps)
  • Microsoft Outlook Web Access
  • GMail (quirky about images; use good alt attributes!)
  • Yahoo! Mail

For the web-based email clients, be sure to preview your email using different browsers as well.

I've tested emails in about 20 other clients (Eudora, SquirrelMail, others), and they generally render similarly to Outlook '03.
Sep 19 '08 #3
What app would one use to layout the html and save it as a .html file? I know, I know, I win the prize of the dumbest question ever.
Jul 31 '10 #4

Sign in to post your reply or Sign up for a free account.

Similar topics

1
by: dan glenn | last post by:
I'm creating HTML emails from a PHP site and sending them out to an email list (just about 40 people so far are on this list). I've tested and confirmed that these emails work in yahoo.com's...
2
by: Damien | last post by:
Hi to all, After hours of attempts and "googling", I'm still pulling my hair off my head when I try to send multipart html emails. It "works" on PCs with Outlook when I juste send a single...
8
by: John | last post by:
Hi I am using the following code to send html emails via outlook. objOutlook = CreateObject("Outlook.Application") objOutlookMsg = objOutlook.CreateItem(Outlook.OlItemType.olMailItem) fso =...
12
by: Dave G | last post by:
Apologies if this has been covered before - I couldn't find it. I currently use ASPEmail to create and send HTML emails from an Access database. The text is personalised and includes embedded...
21
by: maya | last post by:
hi, I'm designing an HTML email for a client.. I know general guidelines (no CSS, no JavaScript... although I do use limited CSS, inside tags (as in <span style=".."we do this at work and it...
0
by: ja | last post by:
To explain: I want to send HTML email from windows.forms app. I need to have textual templates which could be used for changing email bodies. Is it possible to use ASP.NET controls to achieve...
3
by: CJM | last post by:
David, Thanks for the reply. Responses inline: "David E. Ross" <nobody@nowhere.notwrote in message news:OZadnaBdOMGpYb3VnZ2dnUVZ_vOdnZ2d@softcom.net... This is a promotional mailshot so...
0
by: kronus | last post by:
Hey everyone, I am stumped once more and you guys have always helped in one way or the other. I am just now starting to fool around with using PEAR to send html emails. Following the sample...
19
rahulephp
by: rahulephp | last post by:
Hi there, I tried a lot to send HTML code using php mail fuction, but when email sent, it showing all html tags (including style property as well). Can you please let me know any script to send...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
by: ryjfgjl | last post by:
In our work, we often need to import Excel data into databases (such as MySQL, SQL Server, Oracle) for data analysis and processing. Usually, we use database tools like Navicat or the Excel import...
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.