Columnist Dave Hendricks and co-author Graham Gnall share practical, how-to guidance on coding email templates for responsive design in the first of this series.
This column was co-authored by Graham Gnall of Live Intent.
In an increasingly mobile world, populated by email users who routinely swap between devices as often as they blink, adapting your email code to be responsive and render beautifully on any client or device may no longer be a matter of preference, but rather of survival.
I've eschewed opinions in favor of high-level, practical how-to facts for today's article: How to code your email templates for responsive design.
Before getting into the actual structure of the email, you'll need to declare some information in the head section. Below is a head section that's become something of an industry standard. Reuse this in your templates for maximum compatibility:
< !DOCTYPE html PUBLIC "-//W3C//
DTD XHTML 1.0 Transitional//EN"
< html xmlns="http://www.w3.org/1999.
< meta http-equiv="Content-Type"
< meta name="viewport"
When moving your code between an HTML editor and your ESP (and especially vice versa), be sure to first paste it into a plain text document, copy it again, then paste it into its destination. This will safeguard against picking up encoding outside of the character set you'll be using.
A single column layout with a maximum width of 600-650 pixels will render well on all devices and lends nicely to responsive design elements like font size and table width. This is the cleanest and most reliable way to
design for all devices at once.
The most fundamental aspect of designing email is an emphasis on nested tables. This technique may seem ancient to web designers, but is a stalwart necessity in email.
Container Table and Background
Set up a container table with 100 percent width and place a cell within it, also with 100 percent width. Setting a bgcolor here will set a background color for your email. Choose a color that nicely contrasts with the background color of your content.
< table align="center" border="0"
< td align="center"
Place your content in here
If you are using a single format for both mobile and desktop openers, 600 pixels is standard; it looks good on a desktop and will fit the shape of a smartphone. Most smartphones will automatically zoom to fit the content to your screen.
Your content container tables should have pixel-based widths, while all nested tables should be percentage based. This will allow them to stretch and shrink along with the container tables and will work well with responsive designs. Change the width value of your container table and you will see this taking place.
Assign a class name to your container table. This will set you up to layer on media queries and screen size-based rules later.
< table align="center" border="0"
< td align="center"
< table align="center"
style="border-collapse: collapse;" class="container">
< !-- This is your main
content table -->
On all tables and cells, make sure to define dimensions by either relative (percentage) or absolute (pixel) values. Don't expect clients to automatically render them properly otherwise.
When using absolute values do not include "px", as this will cause rendering issues in Outlook. A width of 600 pixels should be input:
If you have empty space in your design, you can handle it with either padding or empty cells.
What About CSS?
CSS (Cascading Style Sheet) support in email is lacking, most notably in Gmail and Gmail apps. For this reason, all styling should be contained in-line, rather than in the < head> section of your email.
The following styles are compatible with most clients, but are by no means the be-all to end all. Feel free to get a little crazy and experiment with others:
For a full list of CSS elements and client compatibility that'll make your head spin, take a look at Campaign Monitor's comprehensive Guide to CSS in Email. You can also download this free ebook, The Da Vinci Coding: The Art of HTML.
That's it for today. Next time, we'll cover text and image handling in responsive email templates, as well as the all-important media queries that will allow this to work for all of your openers.
On the heels of a fantastic event in New York City, ClickZ Live is taking the fun and learning to Toronto, June 23-25. With over 15 years' experience delivering industry-leading events, ClickZ Live offers an action-packed, educationally-focused agenda covering all aspects of digital marketing. Register today!
Want to learn more? Join us at ClickZ Live San Francisco, Aug 10-12!
Educating marketers for over 15 years, ClickZ Live brings together industry thought leaders from the largest brands and agencies to deliver the most advanced, educational digital marketing agenda. Register today and save $500!
As president of LiveIntent, Dave Hendricks devises corporate strategies and tries to simplify marketing language. Before growing LiveIntent, Dave was executive vice president (EVP) of operations at PulsePoint (then known as Datran Media), where he worked alongside LiveIntent chief executive (CEO) Matt Keiser and ran Datran's ESP StormPost (nka PostUp). A member of the founding executive team at ExperianCheetahMail, Dave began his email adventure at Pioneering ESP MessageMedia. Dave was named one of Business Insider's "Top 100 Technologists" in 2011 and Alley Watch claimed he was one of 15 people "changing advertising" in 2014. He plays electric guitar and you should follow him on Twitter @davehendricks.
Gartner Magic Quadrant for Digital Commerce
This Magic Quadrant examines leading digital commerce platforms that enable organizations to build digital commerce sites. These commerce platforms facilitate purchasing transactions over the Web, and support the creation and continuing development of an online relationship with a consumer.
Paid Search in the Mobile Era
Google reports that paid search ads are currently driving 40+ million calls per month. Cost per click is increasing, paid search budgets are growing, and mobile continues to dominate. It's time to revamp old search strategies, reimagine stale best practices, and add new layers data to your analytics.
June 10, 2015
12:00pm ET/9:00am PT