レスポンシブ対応のHTMLメール用のシンプルなテンプレート(テキスト形式にも対応)

デスクトップのメーラーにも、スマフォやタブレットのメーラーにも対応、そしてHTML形式にもテキスト形式にも対応したHTMLメールが作成できるシンプルなテンプレートを紹介します。

テンプレートはMITライセンスで、個人でも商用でも無料で利用できます。

デモのキャプチャ

Responsive HTML Email Template -GitHub

Responsive HTML Email Templateのデモ

デモはオンラインで公開されています。
まずは、ブラウザでサイズを変更して見てみます。

デモのキャプチャ

デモページ:幅1200pxで表示

デモのキャプチャ

デモページ:幅480pxで表示

メールアプリで表示すると、こんな感じです。
主要なメーラー全てで確認済みとのことです。

サイトのキャプチャ
サイトのキャプチャ
サイトのキャプチャ

Responsive HTML Email Templateの使い方

使い方は簡単です。

  1. 「email.html」を使って、HTMLメールを作成します。
  2. 作成が完了したら、CSSをインラインにします。
  3. これで、完了です。

CSSをインラインにする時は、下記のツールが便利です。

サイトのキャプチャ

Premailer

Premailerを使用して、CSSを全てインラインにします。

サイトのキャプチャ

「Paste HTML as the source」をクリック

作成したHTMLをコピペして、コードのURLやトラッキングコードを記述し、「Submit」ボタンをクリックすると、HTMLメール用のコードに変換されます。

サイトのキャプチャ

HTMLメール用のコードの完成

コードの下には、テキスト形式のメールでの表示も確認できます。
見出しの天地に罫線が自動で入るんですね、面白い!

Responsive HTML Email Template

HTMLメールのベースとなるテンプレートです。
※使用する際は、CSSをインラインにします。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="viewport" content="width=device-width" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Really Simple HTML Email Template</title>
<style>
/* ------------------------------------- 
                GLOBAL 
------------------------------------- */
* { 
        margin:0;
        padding:0;
        font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; 
        font-size: 100%;
        line-height: 1.6;
}

img { 
        max-width: 100%; 
}

body {
        -webkit-font-smoothing:antialiased; 
        -webkit-text-size-adjust:none; 
        width: 100%!important; 
        height: 100%;
}


/* ------------------------------------- 
                ELEMENTS 
------------------------------------- */
a { 
        color: #348eda;
}

.btn-primary{
        text-decoration:none;
        color: #FFF;
        background-color: #348eda;
        border:solid #348eda;
        border-width:10px 20px;
        line-height:2;
        font-weight:bold;
        margin-right:10px;
        text-align:center;
        cursor:pointer;
        display: inline-block;
        border-radius: 25px;
}

.btn-secondary {
        text-decoration:none;
        color: #FFF;
        background-color: #aaa;
        border:solid #aaa;
        border-width:10px 20px;
        line-height:2;
        font-weight:bold;
        margin-right:10px;
        text-align:center;
        cursor:pointer;
        display: inline-block;
        border-radius: 25px;
}

.last { 
        margin-bottom: 0;
}

.first{
        margin-top: 0;
}

.padding{
        padding:10px 0;
}


/* ------------------------------------- 
                BODY 
------------------------------------- */
table.body-wrap { 
        width: 100%;
        padding: 20px;
}

table.body-wrap .container{
        border: 1px solid #f0f0f0;
}


/* ------------------------------------- 
                FOOTER 
------------------------------------- */
table.footer-wrap { 
        width: 100%;        
        clear:both!important;
}

.footer-wrap .container p {
        font-size:12px;
        color:#666;
        
}

table.footer-wrap a{
        color: #999;
}


/* ------------------------------------- 
                TYPOGRAPHY 
------------------------------------- */
h1,h2,h3{
        font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; line-height: 1.1; margin-bottom:15px; color:#000;
        margin: 40px 0 10px;
        line-height: 1.2;
        font-weight:200; 
}

h1 {
        font-size: 36px;
}
h2 {
        font-size: 28px;
}
h3 {
        font-size: 22px;
}

p, ul, ol { 
        margin-bottom: 10px; 
        font-weight: normal; 
        font-size:14px;
}

ul li, ol li {
        margin-left:5px;
        list-style-position: inside;
}

/* --------------------------------------------------- 
                RESPONSIVENESS
                Nuke it from orbit. It's the only way to be sure. 
------------------------------------------------------ */

/* Set a max-width, and make it display as block so it will automatically stretch to that width, but will also shrink down on a phone or something */
.container {
        display:block!important;
        max-width:600px!important;
        margin:0 auto!important; /* makes it centered */
        clear:both!important;
}

/* Set the padding on the td rather than the div for Outlook compatibility */
.body-wrap .container{
        padding:20px;
}

/* This should also be a block element, so that it will fill 100% of the .container */
.content {
        max-width:600px;
        margin:0 auto;
        display:block; 
}

/* Let's make sure tables in the content area are 100% wide */
.content table { 
        width: 100%; 
}

</style>
</head>
 
<body bgcolor="#f6f6f6">

<!-- body -->
<table class="body-wrap">
        <tr>
                <td></td>
                <td class="container" bgcolor="#FFFFFF">

                        <!-- content -->
                        <div class="content">
                        <table>
                                <tr>
                                        <td>
                                                <p>Hi there,</p>
                                                <p>Sometimes all you want is to send a simple HTML email with a basic design.</p>
                                                <h1>Really simple HTML email template</h1>
                                                <p>This is a really simple email template. It's sole purpose is to get you to click the button below.</p>
                                                <h2>How do I use it?</h2>
                                                <p>All the information you need is on GitHub.</p>
                                                <table>
                                                        <tr>
                                                                <td class="padding">
                                                                        <p><a href="https://github.com/leemunroe/html-email-template" class="btn-primary">View the source and instructions on GitHub</a></p>
                                                                </td>
                                                        </tr>
                                                </table>
                                                <p>Feel free to use, copy, modify this email template as you wish.</p>
                                                <p>Thanks, have a lovely day.</p>
                                                <p><a href="http://twitter.com/leemunroe">Follow @leemunroe on Twitter</a></p>
                                        </td>
                                </tr>
                        </table>
                        </div>
                        <!-- /content -->
                                                                        
                </td>
                <td></td>
        </tr>
</table>
<!-- /body -->

<!-- footer -->
<table class="footer-wrap">
        <tr>
                <td></td>
                <td class="container">
                        
                        <!-- content -->
                        <div class="content">
                                <table>
                                        <tr>
                                                <td align="center">
                                                        <p>Don't like these annoying emails? <a href="#"><unsubscribe>Unsubscribe</unsubscribe></a>.
                                                        </p>
                                                </td>
                                        </tr>
                                </table>
                        </div>
                        <!-- /content -->
                                
                </td>
                <td></td>
        </tr>
</table>
<!-- /footer -->

</body>
</html>

top of page

©2017 coliss