HTML-форматированный адрес электронной почты не отображается вообще в Gmail, но находится в других почтовых клиентах

В настоящее время я отправляю html-форматированные письма из функции PHP mail() и проверяю их просто, чтобы убедиться, что они отображаются в формате HTML (форматирование в сторону, я хорошо знаю, что форматирование будет отличаться (возможно, радикально) от клиента клиенту). Они отображаются как HTML в клиенте Apple Mail, так и на моем iPhone. Однако Gmail просто отказывается отображать его как HTML как все. И этим я не имею в виду, что он отформатирован неправильно, просто он просто не использует HTML-код.

Странная часть заключается в том, что загружается img из тега, но об этом... это то, что я в основном использую divs для макета и что слишком новый для Gmail или что-то (vs tables)?

Что касается CSS и что не происходит, просмотр исходного источника показывает следующее:

<html><head><style>body { background-color: #F2F2F2; font-family: Arial; color: #5C5C5C; font-size: 11pt; } a { color: #46AAFF; text-decoration: none; } #container { width: 750px; margin-right: auto; margin-left: auto; } #header { float: right; padding: 3px; height: 30px; } #header a { color: #666666; margin-right: 10px; } #mainBody { padding: 20px; background-color: #FFF; border: 1px solid #DADADA; border-radius: 3px; } #imageArea { border-top: solid #E8E8E8 1px; margin: 15px; } #singleImageArea { width: 250px; padding: 15px; } #singleImageArea p { float: right; line-height: 30px; width: 130px; margin-top: 20px; } #footer { padding: 10px; color: gray; } #footer p { text-shadow: 0px 2px #FFF; font-size: 10pt; } #footer a { color: #ADADAD; float: right; padding-left: 20px; padding-right: 20px; } #footer img { width: 35px; height: 23px; padding: 10px; float: left; } </style></head><body><div id="container"><div id="header"><a href="#" onclick="location.href='http://appname.local/login/'; return false;">Login</a></d
 iv><div style="clear: both;"></div><div id="mainBody"><h1>Hi Josh Holat!</h1>You've sent a request to <strong>reset</strong> your appname password. Just click the link below <em>(or copy and paste it into your browser)</em> and follow the instructions to set a new password. The link will expire in one hour.<br/><br/><a href="#" onclick="location.href='http://appname.local/sb/reset-password/?r=2768af61698fcde9c04f9449351575d6bfe6d720'; return false;">http://appname.local/sb/reset-password/?r=2768af61698fcde9c04f9449351575d6bfe6d720</a><br/><br/>If you feel this request was submitted in error, don't worry; you can safely ignore this e-mail and your password will not be changed.<br/><br/>Much Love,<br/>Us</div><!-- #mainBody --><div id="footer"><img src="http://appname.local/images/email/footer_sb.png" /><p>&copy; 2011 appname, Inc. All Rights Reserved <a href="#" onclick="location.href='http://appname.local/sb/legal/'; return false;">Legal</a><a href="#" onclick="location.href='http://appname.local/sb/contact/'; return false;">Contact</a><a href="#" onclick="location.href='http://s
 tagebloc.local/sb/developers/'; return false;">Developers</a><a href="#" onclick="location.href='http://appname.local/sb/blog/'; return false;">Blog</a></p></div><!-- #footer --></div><!-- #container --></body></html>

Также как:

    Delivered-To: [email protected]
Received: by 10.229.40.2 with SMTP id i2cs133298qce;
        Sun, 28 Aug 2011 14:29:08 -0700 (PDT)
Received: by 10.42.152.199 with SMTP id j7mr4419937icw.417.1314566947950;
        Sun, 28 Aug 2011 14:29:07 -0700 (PDT)
Return-Path: <[email protected]>
Received: from joshholat.local (arh2281.urh.uiuc.edu [130.126.70.193])
        by mx.google.com with ESMTP id w3si6800550icz.109.2011.08.28.14.29.06;
        Sun, 28 Aug 2011 14:29:06 -0700 (PDT)
Received-SPF: neutral (google.com: 130.126.70.193 is neither permitted nor denied by best guess record for domain of [email protected]) client-ip=130.126.70.193;
Authentication-Results: mx.google.com; spf=neutral (google.com: 130.126.70.193 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]
Received: by joshholat.local (Postfix, from userid 70)
    id 775063662E01; Sun, 28 Aug 2011 16:29:06 -0500 (CDT)
To: Josh Holat <[email protected]>
Subject: Password Reset Request
X-PHP-Originating-Script: 501:Email.php
From: appname <[email protected]>
Content-type: text/html
Message-Id: <[email protected]>
Date: Sun, 28 Aug 2011 16:29:06 -0500 (CDT)

Я в замешательстве, почему сторонние клиенты продемонстрировали это хорошо, но Gmail просто игнорирует его?

Ответ 1

Gmail не поддерживает тег <style>. Вы должны использовать встроенный css для корректной работы gmail.

Вот список ссылок. http://www.campaignmonitor.com/css/

Ответ 2

GMail не поддерживает <style> теги, а также число клиентов. Чтобы сделать вашу жизнь проще, вы можете использовать convert для преобразования ваших тегов стиля в встроенный CSS: http://beaker.mailchimp.com/inline-css

Ответ 3

Я вижу, что вы используете идентификатор с именем #footer. Похоже, что Google не распознает это имя при работе с почтой. Обратите внимание, что в коде шрифта, видимом из gmail, все ваши ID могут появляться с "exc" + idName, кроме #footer. Попробуйте использовать другое имя.

Ответ 4

Приведенные выше ответы довольно хороши, просто хотел добавить еще несколько пунктов. Все кредиты по этой ссылке:

  1. Gmail поддерживает только <style> в <head>. Gmail поддерживает встроенные стили (<style>). Однако встроенные стили поддерживаются только в заголовке вашего HTML-документа. Приложения Gmail для Android и iOS вообще не поддерживают <style> при рендеринге электронных писем, полученных с помощью учетных записей сторонних разработчиков (GANGA).

  2. Gmail удаляет весь ваш блок <style> если обнаруживает ошибку.

  3. Gmail не допускает отрицательных значений полей CSS.

  4. Gmail не поддерживает селекторы атрибутов и большинство псевдоклассов. например, div[class="content"]{ color: red }. Gmail также не поддерживает псевдоклассы, такие как :checked и :active.