我正在从PHP脚本发送电子邮件,一些电子邮件客户端解析邮件中的日期字符串并创建可点击的日历“链接”。一个例子是Airmail for OSX。我相信还有很多其他人都这样做。我看到了2个问题:
我目前的解决方法是date('Y-​m-​d')
,但老实说这是一些丑陋的代码,我甚至不确定它是否适用于所有电子邮件客户端。
我正在寻找一种可靠的方法来确保日期显示正确(意思是:我创建它们的方式)到处都是。
答案 0 :(得分:0)
我目前的解决方法是日期('Y-m-d'),但老实说 这是一些丑陋的代码,我甚至不确定它是否适用于所有人 电子邮件客户端。
您在上面使用zero width space
来删除设备上的链接。我在Litmus测试了以下内容:
20/02/2018
<br><br><br>
20‌/‌02‌/‌2018
这是一个石蕊链接,展示它的外观: https://litmus.com/checklist/emails/public/cd94368
正如你所说的那样丑陋(但完成工作)而你正在寻找替代方案,下面是不同的方法为不同的电子邮件客户端做这件事。
修复Gmail中的蓝色链接
当Gmail在电子邮件中发现地址或电话号码时,它会自动添加一个额外的样式声明,该声明会将未附加内联样式的电子邮件中的任何链接格式化为蓝色:
.ii a[href] { color: #15c; }
选项1(每个链接的链接):
HTML:
<span class="contact">675 Massachusetts Ave.<br>Cambridge, MA 02139, USA</span>
CSS:
.contact a {color:#000000!important; text-decoration:underline!important;}
选项2(Gmail中的所有链接):
u + #body a {
color: inherit;
text-decoration: none;
font-size: inherit;
font-family: inherit;
font-weight: inherit;
line-height: inherit;
}
修复iOS中的链接
选项1(使用元标记):
<meta content="telephone=no" name="format-detection">
选项2:
使用零宽度非连接器作为上面第一个测试答案
选项3:
将其设置为电子邮件文字的样式,或者给它另一种颜色:
a[href^=tel]{ color:#F00; text-decoration:none;}
选项4:
在iOS设备上,将一个属性注入到链接中,该链接被检测为地址,电话号码或日期。如果您在iPhone上查看Apple Mail中电子邮件的源代码,您会看到如下内容:
<a href="#" x-apple-data-detectors="true">
使用此属性,您可以在块内的样式声明中设置所有自动链接文本的样式:
a[x-apple-data-detectors] {
color: inherit !important;
text-decoration: none !important;
font-size: inherit !important;
font-family: inherit !important;
font-weight: inherit !important;
line-height: inherit !important;
}
我知道要接受很多东西,但所有选项都有效,而这只是为你的工作挑选合适的选项。
如果您有任何问题,请与我们联系。