检测移动邮件客户端的标准方法?

lee*_*ers 13 html css email iphone mobile

此问题类似于" 基于http请求检测Web应用程序中的移动浏览器的标准方法 ",但邮件客户端除外.例如,如果在内置iPhone邮件客户端上打开电子邮件消息,它将显示专门为iPhone设置的消息版本.如果在平板电脑或桌面上打开,它将显示为电子邮件的完整版本.这与原则上类似于具有移动友好版本的网站的网站通过检测用户代理自动加载 - 但对于电子邮件客户端.

那么 - 是否可以检测用于打开电子邮件的邮件客户端并相应地格式化邮件?也许是一种检测屏幕分辨率的方法?

Chr*_*isR 17

您可以尝试应用针对移动设备等特定浏览器的@media css查询.在campaignmonitor帮助网站上有一个很好的介绍,但要注意,它可能只在一个充满浏览器和设备的手中支持,iOS很幸运:)

基本上,您正在定义针对特定屏幕宽度的CSS样式,以便您可以针对有限的屏幕空间优化电子邮件.

@media only screen and (max-device-width: 480px) { ... }
Run Code Online (Sandbox Code Playgroud)

在谈论真正检测并显示完全不同的电子邮件时,这真的是不可能的,因为你在那里谈论javascript而且在电子邮件中没有完成,甚至可能在99%的所有电子邮件客户端都无法工作.但是你可以用@media查询来实现.

  • 是的,但要非常小心,显示:none可能会触发一些垃圾邮件过滤器认为您实际上是在尝试发送垃圾邮件或网络钓鱼. (5认同)