2010-08-04 44 views
34

Tôi có một khách hàng muốn gửi chứng nhận quà tặng cho những người đăng ký trên trang web của họ. Họ muốn tất cả được thiết kế, vì vậy tôi không thể chỉ gửi một email văn bản. Tôi đang cố gắng định vị văn bản trên hình ảnh để nó vẫn có thể động.Định vị tuyệt đối trong email gmail

Tôi đang cố gắng thực hiện điều này với định vị tuyệt đối. Một số hệ thống email yêu thích nó. Một số ghét nó. Gmail sẽ ghét nó.

Chúng tôi đang sử dụng MailChimp cho chiến dịch. Đây là nguồn đầy đủ của email. Sau đó chỉ là đoạn không hoạt động.

<html> 
    <head> 
     <!-- This is a simple example template that you can edit to create your own custom templates --> 
     <meta http-equiv="Content-type" content="text/html; charset=utf-8"> 
     <title>*|MC:SUBJECT|*</title> 

    <style type="text/css">body{background-color:#bab145;text-align:center;}#layout{border:5px solid #999999;background:#ffffff;margin:10px auto;text-align:left;}#header{background-color:#cccccc;padding:0px;color:#333333;font-size:30px;font-family:Georgia;text-align:left;}#content{font-size:13px;color:#4d4d4d;font-family:Helvetica;line-height:1.25em;padding:10px 30px;}.primary-heading{font-size:28px;font-weight:bold;color:#8b0000;font-family:Georgia;line-height:150%;margin:25px 0 0 0;}.secondary-heading{font-size:20px;font-weight:bold;color:#000000;font-style:normal;font-family:Georgia;margin:25px 0 5px 0;}#footer{background-color:#eeeeee;border-top:0px none #ffffff;padding:20px;font-size:10px;color:#333333;line-height:100%;font-family:Verdana;}#footer a{color:#800000;text-decoration:underline;font-weight:normal;}a,a:link,a:visited{color:#800000;text-decoration:underline;font-weight:normal;}</style></head> 
    <body style="background-color: #bab145;text-align: center;"> 
     <table id="layout" border="0" cellspacing="0" cellpadding="0" width="600" style="border: 5px solid #999999;background: #ffffff;margin: 10px auto;text-align: left;"> 


      <tr> 
       <td id="content" style="font-size: 13px;color: #4d4d4d;font-family: Helvetica;line-height: 1.25em;padding: 10px 30px;"><div style="height:243px; width: 500px; position: relative;"> 
<img src="http://getfreepellets.com/images/GC_flat.jpg" style="position: absolute;"> 
    <div style="position: absolute; top: 110px; left: 130px;"> 
     *|FNAME|* *|LNAME|*</div> 
    <div style="position: absolute; top: 140px; left: 130px;"> 
     GetFreePellets.com</div> 
    <div style="position: absolute; top: 166px; left: 130px;"> 
     $100</div> 
    <div style="position: absolute; top: 200px; left: 370px;"> 
     *|COUPONCODE|*</div> 
</div> 
</td></tr> 

      <tr> 
       <td id="footer" style="background-color: #eeeeee;border-top: 0px none #ffffff;padding: 20px;font-size: 10px;color: #333333;line-height: 100%;font-family: Verdana;"> 
        <p><a href="*|ARCHIVE|*" class="adminText" style="color: #800000;text-decoration: underline;font-weight: normal;">view email in browser</a> | <a href="*|UNSUB|*" style="color: #800000;text-decoration: underline;font-weight: normal;">Unsubscribe</a> *|EMAIL|* | <a href="*|UPDATE_PROFILE|*" style="color: #800000;text-decoration: underline;font-weight: normal;">Update your profile</a> | <a href="*|FORWARD|*" style="color: #800000;text-decoration: underline;font-weight: normal;">Forward to a friend</a></p> 

        <p>*|LIST:DESCRIPTION|*</p> 

        <p>*|HTML:LIST_ADDRESS_HTML|*</p> 
        <p>Copyright (C) *|CURRENT_YEAR|* *|LIST:COMPANY|* All rights reserved.</p> 
       </td> 
      </tr> 
     </table> 
     <span style="padding: 0px;"></span> 
    <center><table width="95%" style="clear:both;margin:0px !important;padding:0px !important;margin-top:20px !important;border-top:1px solid #999 !important;border-bottom:1px solid #999 !important;" cellpadding="0" cellspacing="0"><tr> 
    <td align="left" style="padding:10px !important;margin:0px !important;color:#666 !important;background:#CCC !important;width:50% !important;border-bottom 1px solid #999 !important;font-family:Verdana,Arial,Sans !important;font-size:11px !important;font-weight:normal !important;font-style:normal !important;text-decoration:none !important;vertical-align:middle !important;text-align:left !important;"> 
     Sent to *|EMAIL|*. <a href="*|UNSUB|*" style="font-family:Verdana,Arial,Sans !important;font-size:11px !important;font-weight:normal !important;font-style:normal !important;text-decoration:none !important;color:#03C !important;">Unsubscribe</a> | 
     <a href="*|UPDATE_PROFILE|*" style="font-family:Verdana,Arial,Sans !important;font-size:11px !important;font-weight:normal !important;font-style:normal !important;text-decoration:none !important;color:#03C !important;">Update Profile</a> | 
     <a href="*|FORWARD|*" style="font-family:Verdana,Arial,Sans !important;font-size:11px !important;font-weight:normal !important;font-style:normal !important;text-decoration:none !important;color:#03C !important;">Forward to a Friend</a> 
    </td> 
    <td align="right" style="padding:10px !important;margin:0px !important;color:#666 !important;background:#CCC !important;width:50% !important;border-bottom 1px solid #999 !important;vertical-align:middle !important;text-align:right !important;"> 
     *|REWARDS|* 
    </td> 
</tr></table></center></body> 
</html> 

Và cũng giống đoạn tôi đang lo lắng về:

<tr> 
       <td id="content" style="font-size: 13px;color: #4d4d4d;font-family: Helvetica;line-height: 1.25em;padding: 10px 30px;"><div style="height:243px; width: 500px; position: relative;"> 
<img src="http://getfreepellets.com/images/GC_flat.jpg" style="position: absolute;"> 
    <div style="position: absolute; top: 110px; left: 130px;"> 
     *|FNAME|* *|LNAME|*</div> 
    <div style="position: absolute; top: 140px; left: 130px;"> 
     GetFreePellets.com</div> 
    <div style="position: absolute; top: 166px; left: 130px;"> 
     $100</div> 
    <div style="position: absolute; top: 200px; left: 370px;"> 
     *|COUPONCODE|*</div> 
</div> 
</td></tr> 

Lưu ý: MailChimp merge biến là những nhân vật giữa | và |.

Dưới đây là hình ảnh về giao diện trong Entourage. Thanh màu đỏ là một tên thật, vì vậy .. ya: Email working http://img.skitch.com/20100804-m91tny1ck75adfibga6cundcxr.jpg

Và đây là nó trong gmail (Tôi biết tên được không bị kiểm duyệt): Email not working http://img.skitch.com/20100804-rfrb1fejjubqr4id56yq1xihdp.jpg

Bất kỳ ý tưởng về cách để làm việc này trong gmail?

+4

Nhận xét về điều này: Rất nhiều người đăng tải dường như nghĩ rằng yahoo, gmail, vv làm điều này vì họ lười biếng/có nghĩa là :). Trong thực tế, họ đang ngăn chặn nhiều cuộc tấn công XSS, và các cuộc tấn công vị trí. Đó là lý do tại sao họ loại bỏ các thẻ này – MJB

+0

@MJB, Tấn công vị trí là gì? – Jonah

+0

Bạn che phủ thứ gì đó khác để trông kosher nhưng có điều gì đó bất ngờ khi người dùng kích hoạt – MJB

Trả lời

38

Rất tiếc, bạn không thể sử dụng position: absolute.

Ngoài ra, vì Outlook đang sử dụng trình kết xuất HTML Word, bạn cũng sẽ gặp sự cố khi sử dụng định vị tuyệt đối.

Hầu hết các email HTML được trình bày bằng bảng.

Check this out.

+1

Tôi thực sự hy vọng đó không phải là câu trả lời .. :) Bạn cũng không thể sử dụng hình nền, đúng không? Vì vậy, tôi không thể chỉ làm một bảng với bg của hình ảnh đó .. Cảm ơn bạn đã liên kết. – hookedonwinter

+2

+1 liên kết cần được đọc cho bất kỳ ai nghĩ đến việc gửi email theo chương trình (và các ông chủ của họ). – slebetman

+0

@slebetman vừa gửi cho sếp của tôi – hookedonwinter

3

Tôi khuyên bạn nên làm toàn bộ điều dưới dạng bảng (hỗ trợ div không đáng tin cậy 100% trong ứng dụng email). Sử dụng các thuộc tính đường viền để cung cấp cho bảng đường viền màu lục. Chèn hình ảnh của biểu trưng/biểu ngữ vào hàng đầu tiên của bảng (đã hợp nhất ba cột). Sử dụng 3 hàng tiếp theo cho To, From và Amount (với các giá trị trong cột thứ hai và thứ ba được hợp nhất). Và sử dụng cột cuối cùng của hàng cuối cùng cho mã cupon.

Nếu bạn thực sự muốn đường viền đôi thì bạn có thể quấn bảng trong div hoặc để có khả năng tương thích tối đa, hãy bọc bảng trong một cột 1, 1 hàng. Có một số điều xấu xí nhưng các ứng dụng email có lỗi và/hoặc triển khai mã HTML rất lớn, do đó đây không phải là thời gian hoặc địa điểm để trở nên xấu hổ về mã xấu, không phải web2.0.

Xem liên kết được đăng bởi alex để biết thêm thông tin.

+0

Ý tưởng hay. Tôi sẽ thử xem. Tôi chỉ có thể làm cho hình ảnh với php trên bay .. Hoặc nói với họ để sử dụng văn bản friggin và được vui mừng họ có thể. – hookedonwinter

1

(Tôi biết tôi trả lời 4 năm sau ... nhưng có lẽ nó sẽ giúp ai đó ...) Nếu bạn nhìn kỹ, bạn không có hình nền, bạn có thể có 10 hình ảnh trở lên, nhiều màu nền và một bảng phức tạp.

Không có hình ảnh nào phía sau văn bản. Bạn có thể chia bảng của bạn và soạn hình nền của bạn dưới dạng nhiều đoạn hình ảnh và phù hợp với màu nền của văn bản với những hình ảnh này.

Thực sự ...trong mẫu này không có hình nền "bắt buộc", chỉ là một bảng phức tạp.

Các vấn đề liên quan