如何使用表结构构建响应式电子邮件模板



我一直在阅读和研究如何构建响应式电子邮件 - 问题是我正在使用表构建它。我知道桌子本质上没有反应迅速。但是,我一直在阅读响应式设计,媒体查询等信息,但我仍然找不到解决方案。下面是我到目前为止的。任何帮助都将不胜感激,因为我想学习如何使电子邮件响应。

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Trident Email</title>
<style type="text/css">
@media (max-width: 480px){
	table,tbody,tr,td,img {
		display:block;
	}
	div#background {
			width: 400px;
		}
	table#container{
			width:300px;
	}
}	
</style>
</head>
<body>
<div id="background" style="background-color:#eeee00;padding:10px 0;margin:0 320px;">
	
	<table style="margin:0px auto;border-spacing:0px;border-collapse:collapse;text-align:center;" cellpadding="0" cellspacing="0" width="600" align="center">
	<tbody>
		<tr>
			<td>
				<table id="container" style="border-spacing:0px;border-collapse:collapse;" cellpadding="0" cellspacing="0" width="100%">
					<tbody>
						<tr>
							<td>
								<img src="http://enews.trident.edu/hs-fs/hub/336281/file-2384384346-jpg/Headers_Footers/Trident_is_Coming_to_Town.jpg?t=1446144504152" width="100%" style="vertical-align:bottom;">
							</td>
						</tr>
						<tr>
							<td>
								<table style="border-spacing;0px;border-collapse:collapse;background-color:rgb(0,39,77);" cellpadding="5" cellspacing="0" width="100%">
									<tbody>
										<tr>
											<td></td>
									
										<tr>
											<td style="text-align:left;" width="65%">
												<table cellpadding="5" cellspacing="10" width="100%">
													<tbody>
														<tr>
															<td>
																<div style="">
																<p><span style="color: #9c800d; font-family: helvetica;text-transform:uppercase;"><strong>Date:</strong></span></p>
																</div>
															</td>
															<td width="100%" style="text-align:left;">
																<div style="">
																	<p>
																		<span style="color: #9c800d; font-family: helvetica;"><strong>November 2, 2015</strong></span>
																	</p>
																</div>
															</td>
														</tr>
														<tr>
															<td>
																<div style="">
																<p>
																	<span style="color: #9c800d; font-family: helvetica;text-transform:uppercase;"><strong>time:</strong></span>
																</p>
																</div>
															</td>
															<td width="100%" style="text-align:left;">
																<div style="">
																	<p>
																		<span style="color: #9c800d; font-family: helvetica;"><strong>10:00AM - 2:00PM</strong></span>
																	</p>
																</div>
															</td>
														</tr>
														<tr>
															<td>
																<div style="">
																<p>
																	<span style="color: #9c800d; font-family: helvetica;text-transform:uppercase;"><strong>location:</strong></span>
																</p>
																</div>
															</td>
															<td width="100%" style="text-align:left;">
																<div style="">
																	<p>
																		<span style="color: #9c800d; font-family: helvetica;line-height:1.5;"><strong>Fort Rucker Army Installation<br/>Bldg.4502, Room 303</strong></span>
																	</p>
																</div>
															</td>
														</tr>
														
													</tbody>
												</table>
											</td>
											<td width="35%" style="text-align:right;">
												<div>
													<img src="http://enews.trident.edu/hs-fs/hub/336281/file-2668017528-jpg/images/Outreach/James_Shiver_175px.jpg?t=1446144504152" width="100%">
												</div>
												<p style="text-align:left;" color="#ffffff" align="left"><span style="font-family: helvetica; color: #ffffff;" color="#ffffff"><strong>James Shiver</strong></span><br/><span style="font-family: helvetica; font-size: 13px; color: #ffffff;">334-470-9146</span><br><a href="mailto:james.shiver@trident.edu" style="text-decoration:none;" data-hs-link-id="0" target="_blank"><span style="color: #ffffff;">james.shiver@trident.edu</span></a></p>
											</td>
										</tr>
									</tbody>
								</table>
								<table style="border-spacing;0px;border-collapse:collapse;background-color:rgb(0,39,77);" cellpadding="5" cellspacing="0" width="100%">
									<tbody>
										<tr>
										<td width="20"></td>
											<td width="80">
												<div style="border-top:2px solid #9c800d;width:98%">
													<p style="color:#ffffff;text-align:center;font-family:helvetica;font-weight:bold;">
														Can't stop by? Visit us Online:
													</p>
												</div>
											</td>
										<td width="20"></td>		
										</tr>
									</tbody>
								</table>
								<table style="border-spacing;0px;border-collapse:collapse;background-color:rgb(0,39,77);text-align:center;" cellpadding="0" cellspacing="0" width="100%" align="center">
									<tr>
										<td width="20"></td>
										<td>
											<div>
												<p style="text-align:center;color:#ffffff;font-family:helvetica;font-size:14px;">
													<a href="../www.trident.edu/james" style="color:#ffffff;text-decoration:none;font-size:14px;" target="_blank">trident.edu/james</a>
												</p>
											</div>
										</td>
										<td width="">
											<div>
												<p style="text-align:center;color:#ffffff;font-family:helvetica;font-size:14px;">
													<a href="http://www.trident.edu/news-and-events?cid=701E00000007j5C" style="color:#ffffff;text-decoration:none;font-size:14px;" target="_blank">News and Events</a>
												</p>
											</div>
										</td>
										<td>
											<div>
												<p style="text-align:center;color:#ffffff;font-family:helvetica;font-size:14px;">
													<a href="http://blog.trident.edu?cid=701E00000007j5C" style="color:#ffffff;text-decoration:none;font-size:14px;" target="_blank">University Blog</a>
												</p>
											</div>
										</td>
										<td width="20"></td>
									</tr>
										
								</table>
								<table style="border-spacing;0px;border-collapse:collapse;background-color:rgb(0,39,77);" cellpadding="5" cellspacing="0" width="100%">
									<tbody>
										<tr>
											<td width="20"></td>
											<td width="60">
												<div>
													<p style="color:#ffffff;text-align:center;font-family:helvetica;font-weight:bold;">
														Trident University<br/>1212 Plaza Dr.<br/>Cypress, CA 90630
													</p>
												</div>
											</td>
											<td width="20"></td>
										</tr>
										<tr>
											<td width="20"></td>
											<td width="60">
												<div>
													<img src="http://enews.trident.edu/hs-fs/hub/336281/file-2102317013-png/outreach_emblem-188px.png?t=1446144504152&amp;width=80&amp;name=outreach_emblem-188px.png" width="80" align="center">
												</div>
											</td>
											<td width="20"></td>
										</tr>
										<tr>
											<td width="20"></td>
											<td width="60"><p style="color:#ffffff;font-size:13px"><a href="#" style="color:#ffffff;">Unsubscribe</a></p></td>
											<td width="20"></td>
										</tr>
									</tbody>
								</table>
							</td>
						</tr>
					</tbody>
				</table>
			</td>
		</tr>
	</tbody>
	</table>
</div>
</body>
</html>

您需要在 <style>中的媒体查询中包含一个 !important在小视口上的全宽度和堆叠。

这是使用媒体查询响应迅速的2列电子邮件布局的基本示例:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <!-- META Stuff -->
    <!-- CSS Reset -->
    <style>
        /* Media Queries */
        @media screen and (max-width: 600px) {
            .email-container {
                width: 100% !important;
                margin: auto !important;
            }
            /* What it does: Forces table cells into full-width rows. */
            .stack-column {
                display: block !important;
                width: 100% !important;
                max-width: 100% !important;
                direction: ltr !important;
            }
        }
    </style>
</head>
<body width="100%" bgcolor="#000000" style="margin: 0; mso-line-height-rule: exactly;">
    <center style="width: 100%; background: #000000;">
        <!-- Email Body : BEGIN -->
        <table role="presentation" cellspacing="0" cellpadding="0" border="0" align="center" width="600" style="margin: auto;" class="email-container">
            <!-- 2 Even Columns : BEGIN -->
            <tr>
                <td bgcolor="#ffffff" align="center" valign="top" style="padding: 10px;">
                    <table role="presentation" cellspacing="0" cellpadding="0" border="0" width="100%">
                        <tr>
                            <!-- Column : BEGIN -->
                            <td class="stack-column">
                                <table role="presentation" cellspacing="0" cellpadding="0" border="0">
                                    <tr>
                                        <td style="font-family: sans-serif; font-size: 15px; line-height: 20px; color: #555555; padding: 0 10px 10px; text-align: left;">
                                            Column 1 Maecenas sed ante pellentesque, posuere leo id, eleifend dolor. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. 
                                        </td>
                                    </tr>
                                </table>
                            </td>
                            <!-- Column : END -->
                            <!-- Column : BEGIN -->
                            <td class="stack-column">
                                <table role="presentation" cellspacing="0" cellpadding="0" border="0">
                                    <tr>
                                        <td style="font-family: sans-serif; font-size: 15px; line-height: 20px; color: #555555; padding: 0 10px 10px; text-align: left;">
                                            Column 2 Maecenas sed ante pellentesque, posuere leo id, eleifend dolor. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. 
                                        </td>
                                    </tr>
                                </table>
                            </td>
                            <!-- Column : END -->
                        </tr>
                    </table>
                </td>
            </tr>
            <!-- 2 Even Columns : END -->
        </table>
    </center>
</body>

完整的代码可在此处获得

最新更新