Thursday May 27, 2021 By David Quintanilla
Build an HTML Email Template From Scratch

Final product imageFinal product imageFinal product image
What You will Be Creating

One of the best ways to know any course of is to hold it out your self, from the bottom up. Right this moment, we’re going to just do that with e-mail design, by constructing a easy HTML e-mail template from scratch.

“The earlier you cease preventing the quirks of e-mail, the earlier you need to use them to your benefit.” – Caity G. O’Connor

Fashionable HTML Electronic mail Templates on Envato Parts

Should you’re in search of a ready-made, skilled resolution, seize one in all our popular HTML email templates on Envato Parts. We’ve a whole bunch of responsive choices all included together with your Parts membership, with easy-to-customize options to get you began.

popular HTML email templates on Envato Elementspopular HTML email templates on Envato Elementspopular HTML email templates on Envato Elements
Fashionable HTML e-mail templates on Envato Parts

Get 1 Month Free!

For a restricted time, your first month on Envato Parts is free. So you’ll be able to spend 30 days downloading as many e-mail templates as you need, with out paying a cent. Plus you’ll be able to obtain inventory photos, fonts, graphics, and different skilled design sources to make your mail newsletters look superior. You solely pay when you determine to proceed previous the primary month.

Free email templates on Envato ElementsFree email templates on Envato ElementsFree email templates on Envato Elements

To be sure you get your 30-day free trial, you will want to enroll utilizing this special link or enter the next code on the sign-up web page:


Not what you’re in search of? No downside, this tutorial will train you how you can construct your individual!

The HTML Electronic mail Template We’re Constructing

Right here’s the HTML e-mail we’ll be constructing, be happy to fork the pen and use it your self. Keep in mind that after we’re viewing this template by means of an online browser we’re a lot much less prone to run into issues than with e-mail purchasers.

1. Start Your HTML Electronic mail Doc

To start with, it’s price mentioning the place I pulled a few of the sources from.

Now, as we mentioned within the previous tutorial, you’ll want to start your HTML e-mail template with an HTML doctype, and the proper language to your subscribers. On this case we’re going to use the HTML5 doctype, set our language to English with <html lang="en">, and in addition embrace the XML and Microsoft Workplace namespaces (the xmlns bits). We’re going to want these just a few strains down, as I am going to clarify.

There are fairly just a few issues within the code above, however it’s the naked minimal you have to guarantee your last e-mail renders fantastically in all places.

Firstly, we’ve got just a few meta tags to make sure the fitting textual content encoding, viewport scaling throughout totally different cellular units, and one to cease Apple from adjusting the scale in an odd method of their mail apps.

Beneath the <title></title> tag you will see some code between <!--[if mso]> and <![endif]-->. Inserting code inside these two tags signifies that solely Microsoft Outlook on Home windows will apply it (mso = ‘Microsoft Outlook’). And in there, we’ve got a small quantity of XML that may be certain that PNG photos show on the proper dimension in Outlook on Home windows. The xlmns settings that we put within the html tag ensures this code will get interpreted correctly.

Beneath that, we’ve got a model tag with simply a few CSS guidelines. The primary units the font for all our fundamental components, and that is for the good thing about Gmail webmail, which is able to override our font settings until we embrace this. If you find yourself altering your fonts later, remember to make the change right here too.

Lastly, we’re together with desk, td {border:2px stable #000000 !vital;} which is able to draw a border on every thing. That is purely in order that we are able to see what we’re doing as we construct, and we’ll take away it on the finish.

With that sorted, we are able to begin constructing the remainder of the construction.

2. Create the Physique and Predominant Desk

First, we’ll add an total construction for our e-mail, beginning with a <physique> tag. Add the code under instantly beneath the </head> tag:

You possibly can see the margin and padding on the physique tag are set to zero to keep away from any surprising area.

We’ve additionally added a desk with a width of 100%. This acts as a real physique tag for our e-mail, as a result of the physique tag is usually eliminated by e-mail purchasers. Apply any ‘physique’ background color that you just need to this desk tag.

All our tables shall be set to position="presentation". This makes them extra accessible, because it tells display readers to deal with it as a visible desk, not a knowledge desk.

We’ve set border-collapse to collapse, and each border and border-spacing to zero to keep away from any surprising area within the desk.

You will discover we’re utilizing <td align="middle">, and when you’re already acquainted with HTML you is likely to be questioning why, since align is definitely a deprecated HTML property. We use it as a result of e-mail purchasers range so extensively of their stage of CSS assist, and sometimes we nonetheless want to make use of deprecated HTML to make sure every thing shows correctly in all places. On this occasion, it’s as a result of Outlook for Home windows doesn’t obey margin:0 auto; in CSS to middle issues.

Lastly, be sure you at all times set the padding in your desk cells to zero within the inline kinds, e.g. <td model="padding:0;">, in any other case e-mail purchasers will all add their very own quantity of padding. Once we do add padding ourselves, we are able to alter this worth, but when there is no such thing as a padding to be utilized to any of the perimeters, it’s essential to explicitly set it to zero. 

Our first HTML email layout sectionOur first HTML email layout sectionOur first HTML email layout section

A Notice on Utilizing CSS Padding Shorthand

When utilizing CSS padding on desk cells, you’ll be able to reliably write it 3 ways. Both specify one worth, e.g. padding:20px which is able to apply 20 pixels of padding to each facet of your cell (high, proper, backside and left), or specify padding in pairs, i.e. padding: 10px 20px, which is able to add 10 pixels padding to each high and backside, plus 20 pixels to each left and proper. If neither of these are appropriate, it is best to declare each facet, i.e. padding: 10px 10px 0 5px. In all instances it’s essential to set every worth, even when a few of them are zero. Moreover, solely specifying three values can have unpredictable outcomes throughout e-mail purchasers. 

Padding works reliably on desk cells in all e-mail purchasers, however if you’re having hassle with padding, there is no such thing as a must resort to spacer GIFs. In a pinch you need to use spacer divs or spacer cells. Simply embrace a non-breaking area character (&nbsp;) inside, set an identical peak and line peak, and remember to embrace mso-line-height-rule:precisely which is able to guarantee Microsoft Outlook for Home windows renders it on the pixel-perfect dimension. (In case you are creating horizontal area, you have to specify a width as a substitute of peak, and should must additionally add font-size:0;.) Right here is an instance or a spacer cell inside a row:

And here’s a spacer div:

Including the Predominant Desk

Now let’s place a desk of 602 pixels broad contained in the container desk.

600 pixels is a protected most width to your emails to show comfortably inside most desktop and webmail purchasers on most display resolutions, and we’re including 2 pixels so we are able to have a 1 pixel border across the exterior, which provides a pixel on both facet.

We’ll exchange our little ‘Good day!’ greeting with this desk. 

Nice! Now we’ve got our outer desk, and our fundamental content material desk sitting inside, prepared for some rows of content material.

The container table for our HTML email layoutThe container table for our HTML email layoutThe container table for our HTML email layout

3. Create the HTML Electronic mail Template Construction and Header

In our e-mail design we are able to see that the structure is split into just a few logical sections, so we’ll create a row for every.

Let’s duplicate the one row within the final desk we added in order that we’ve got three in whole, by copying every thing between (and together with) the <tr> and </tr> and pasting it two instances beneath.

I’ve modified the ‘Good day!’ textual content to learn Row 1, Row 2 and Row 3 so it ought to now seem like this:

Extra rows in our HTML email layoutExtra rows in our HTML email layoutExtra rows in our HTML email layout

Now we’ll color them based on the design by including a background CSS property to the model tag. At all times keep in mind to make use of the total six characters of a hexadecimal code like #ffffff, as three character shorthand like #fff received’t at all times work in all e-mail purchasers.

Colored rowsColored rowsColored rows

Okay, subsequent up in our e-mail design we’re going to deal with Row 1. On the cell, let’s change the padding from 0 to 40px 0 30px 0. Then contained in the cell we’ll insert our picture:

At all times specify the width of your photos utilizing the HTML width attribute quite than CSS, e.g. width="300" as seen above, quite than model="width:300px;". Should you do not, Microsoft Outlook for Home windows will show your picture at its bodily dimension. 

We’ve additionally set the picture peak to auto to keep away from any squishing, and show to block, which prevents gaps from showing beneath it in some e-mail purchasers.

Lastly, in case your picture incorporates vital data that is not talked about in your e-mail’s textual content, remember to add an outline of it to the alt tag in order that it will likely be introduced by display readers to these utilizing them.

Notice: Photographs do not at all times load and alt textual content isn’t at all times visually displayed as a fallback, so any essential data ought to at all times be included as dwell textual content in your e-mail quite than being embedded in a picture.

And that’s our HTML header completed!

The html email header along with imageThe html email header along with imageThe html email header along with image

4. Create the Content material Space

Shifting on from the header, let’s now focus on our HTML e-mail’s content material space. First off, we’ll add some padding to the Row 2’s cell in order that the desk inside has some area round it, as per our design, in order that it now seems like this:

Added padding to the middle cellAdded padding to the middle cellAdded padding to the middle cell
Added padding to the center cell

Now we’ll exchange the ‘Row 2’ textual content with one other desk to nest our fundamental content material inside. When constructing HTML e-mail utilizing tables, we have to nest them as a result of colspan and rowspan aren’t extensively supported throughout e-mail purchasers.

We’ve set the width of this desk to 100%. It’s good observe to make use of proportion widths quite than utilizing a pixel worth wherever doable as a result of this can enable you to additional down the monitor if you wish to make your e-mail responsive, and even when you merely want to regulate the width of your e-mail in a while. Proportion widths will robotically adapt to a brand new container dimension, whereas pixel widths would all must be individually up to date.

Two nested rows for our main contentTwo nested rows for our main contentTwo nested rows for our main content
Two nested rows for our fundamental content material

Now we’ll add our content material to the highest row, which is a heading, a paragraph of textual content, and a last paragraph with a hyperlink inside. At this stage, we aren’t including any styling in any respect to those components.

Added content and padding to the top rowAdded content and padding to the top rowAdded content and padding to the top row

Change the ‘Row 1’ textual content with the next:

Subsequent we’re going so as to add our two columns of content material to Row 2. As a result of we would like a niche in between these two cells, we’ll create a three-column desk with an empty cell between the 2 outer columns. There are just a few methods to create this structure, however this one is probably the most dependable for our functions.

As a lot as I like to stay to percentages, when you might have content material that could be a particular dimension, it may be tough to transform it to a proportion (on this instance, the columns can be 48.1% which may develop into complicated). Because of this, since our two photos are 260px broad, we’ll create columns which might be additionally 260px broad, with a 20px margin cell within the center. (It will whole 540px, which is the 600px width of our desk minus the padding of 30px on both facet.) Remember to zero your font-size and line-height and add a non-breaking area character &nbsp; within the center cell.

We’ll additionally set the vertical-align to high for each cells in order that they are going to vertically align to the highest, even when one column has extra textual content than the opposite. The default vertical alignment is center.

Change ‘Row 2’ with this desk:

Two columns to content row twoTwo columns to content row twoTwo columns to content row two

Now let’s add our photos and content material to these columns. Margins are very nicely supported on <p> tags throughout all e-mail purchasers, so we are going to wrap our textual content and pictures in <p> tags and alter the spacing between them utilizing margin later after we add all our textual content styling.

Let’s add content material to Columns 1 and a couple of in order that the entire desk now seems like this:

Right here we’ve set the width of the pictures utilizing the HTML width attribute once more, identical to we did after we inserted the header picture.

Images in the columnsImages in the columnsImages in the columns
Photographs within the columns

5. Type the Electronic mail Template Footer

Now we’ll add our padding to the footer row.

Padding to the footer rowPadding to the footer rowPadding to the footer row
Padding to the footer row

Inside that cell, we’ll exchange the ‘Row 3’ textual content with one other desk to get two columns, every 50% broad, with the left set to align="left" and proper to align="proper" in order that the content material in every shall be pinned to these sides and provides us a balanced e-mail design.

Two columns for the footerTwo columns for the footerTwo columns for the footer
Two columns for the footer

Change ‘Left Column’ with a paragraph of textual content:

We’ll create one other little desk for our social media icons, because it’s one of the simplest ways to get probably the most exact spacing that renders correctly in all places. Change the ‘Proper Column’ textual content with the desk under.

You will discover we aren’t specifying a desk width, and that is in order that the width of the desk shall be decided by the cells inside. They’re every 38px broad (the width of our icons) plus 10px padding on the left.

Table for social media iconsTable for social media iconsTable for social media icons
Desk for social media icons

And there we’ve got it; our HTML e-mail template structure is full!

6. Type the Textual content

Styling the textual content inside our HTML e-mail template is a extremely vital step. First, let’s take a look at the highest row of content material with our h1 and introductory textual content. 

Necessary Notice when utilizing Paragraph and Heading Tags

When utilizing paragraph and heading tags (p, h1, h2, and many others.) it’s essential to specify your high and backside margin settings, in any other case every e-mail shopper will apply their very own wildly totally different default margins to those components. You additionally want to ensure your high and backside margins are set to zero if you don’t need any in any respect, through which case you’ll set your heading to margin:0;. Should you solely desire a backside margin, it is best to nonetheless set the highest margin to zero, e.g. margin:0 0 10px 0;

With that in thoughts, we’ll set our desired margins on all our tags, and we additionally need to set the textual content color to be #153643, which we are able to apply to the cell, as every thing inside will inherit that color. After these modifications, the entire cell seems like this:

You will discover above that we’ve got additionally set the font-family on each particular person h1 and p aspect, and also you is likely to be questioning why we won’t simply set this on the physique or desk tag. It is because some webmail purchasers will override your font when you do not set them inline on every paragraph or heading aspect. There are different concerns and approaches to this challenge, however for simplicity’s sake and to make sure our e-mail renders completely in all places at this stage, we are going to set it inline on every aspect.

Now, shifting right down to our two-column space, add the coloration to every of the 260px broad cells in order that they each seem like this:

As above, we’ll add some textual content styling and margins to our paragraphs and hyperlinks, and set a base font dimension to the complete desk. All collectively, the desk now seems like this:

Lastly, we’ll model the footer. Firstly, we’ll add some font styling to the principle footer desk, inside our crimson footer cell with the 30px padding, in order that it now reads:

Within the left column of this desk, we are able to replace our paragraph and hyperlink to incorporate model and color:

And on our social media icons, we’ll model every hyperlink to be white, in order that if the pictures do not load, any alt textual content shall be seen on the crimson background. Alter every hyperlink in order that they seem like this:


Almost thereAlmost thereAlmost there
Virtually there!

And there we’ve got it! The whole lot is in.

7. Run Some Checks

At this level, it is a good suggestion to run your HTML code by means of an e-mail testing service like Litmus, or Email on Acid. Leaving the borders on all of the tables and cells might be useful to see what’s occurring in every e-mail shopper. (Relying on how you’re testing your e-mail, you would possibly must remotely host your photos first, and insert the total distant URLs for every picture into your code. Confer with your testing service’s web site to learn to take a look at your HTML.)

Listed here are a few of my take a look at outcomes from Electronic mail on Acid:

Now it is time to flip off the borders and see the e-mail design trying stunning. Within the model tag within the head, take away the road that reads:

Borders turned offBorders turned offBorders turned off
Borders turned off

And that’s it! 

You’ve Created a Easy HTML Electronic mail!

Earlier than we name it a day, when you’ve got used any feedback in your CSS within the head of your file for any cause, eliminate them. Some e-mail purchasers can choke on CSS feedback so it’s wisest to not embrace them.

Now is an effective time to do a last take a look at with Litmus, or Email on Acid, after which your HTML e-mail is able to ship!

Obtain Electronic mail Templates

Should you want extra choices, then one in all our responsive email templates could also be simply what you want. Subscribe to Envato Parts and also you’ll be given limitless entry to a whole bunch of customizable e-mail templates, in addition to inventory pictures, icons, graphics, and lots of different artistic belongings to your tasks.

Be taught Extra About HTML Electronic mail

To take what you’ve realized to the following stage! Take a look at our Mastering HTML Email studying information for extra tutorials on HTML e-mail templates, e-mail design, coding responsive e-mail, accessibility, advertising and marketing, transactional e-mail, e-mail service suppliers (ESPs), improvement workflow suggestions, and extra!

Source link