【问题标题】:href in anchor tag is removed by yahoo mail clientyahoo 邮件客户端删除了锚标记中的 href
【发布时间】:2020-08-14 20:58:30
【问题描述】:

下面是邮件中发送的邮件模板sn-p代码:

<a href="https:&#x2F;&#x2F;someurl.net&#x2F;reset-password?passwordResetToken&#x3D;Qlc9CFIj8NziJEFuDFXv0uDHZTlzhMbj" style="font-family: 'arial',sans-serif; color: #fff; text-decoration: none; padding: 10px 10px;">TROQUE SUA SENHA</a>

yahoo 呈现为类似 (missing href)

<a rel="nofollow" style="font-family:'arial', sans-serif;color:#fff;text-decoration:none;padding:10px 10px;">TROQUE SUA SENHA</a>

gmail 呈现为类似的东西,(这是正确的)

<a href="https://someurl.net/reset-password?passwordResetToken=OwNWeKbhoK8TaklFdJRIQWTi7dmCI93A" style="font-family:'arial',sans-serif;color:#fff;text-decoration:none;padding:10px 10px" target="_blank" data-saferedirecturl="https://www.google.com/url?q=https://someurl.net/reset-password?passwordResetToken%3DOwNWeKbhoK8TaklFdJRIQWTi7dmCI93A&amp;source=gmail&amp;ust=1588314607785000&amp;usg=AFQjCNEjn0R1PYzmZsDWVFxNzvIhjWG8_A">TROQUE SUA SENHA</a>

是否应该设置任何特定的锚标记属性以在雅虎客户端呈现&lt;a&gt; 标记?

【问题讨论】:

  • 也许你转义的太急切了一些字符(你的/=不应该被转义)。

标签: html css yahoo yahoo-api yahoo-mail


【解决方案1】:

解决了,将href url中的html entity hex&amp;#x2F;替换为/

rawTemplate.replace(/&#x2F;/g, '/')

观察到gmail 邮件客户端处理斜线(&amp;#x2F;)和斜线(/)的html实体十六进制,因此能够在渲染后获得正确的锚链接。

yahoo 邮件客户端在渲染时只处理斜杠(/),因此必须手动替换

【讨论】:

  • 这个替换方法为我们在雅虎解决了这个问题。非常感谢!
猜你喜欢
  • 2015-05-09
  • 1970-01-01
  • 2010-12-06
  • 2019-03-13
  • 2021-07-06
  • 2015-09-23
  • 2020-10-13
  • 1970-01-01
  • 2021-11-12
相关资源
最近更新 更多