【发布时间】:2014-11-06 21:18:54
【问题描述】:
我正在从我的php 脚本发送一些邮件。
它的结构如下:
<style type="text/css">
.elements{
/*its CSS*/
}
.elements:hover{
/* Hoverd CSS changes background and color*/
}
</style>
<center>
Actual Mail Body <a class="elements" href="URL">Element</a>
<center>
这在除gmail 之外的所有邮件客户端中都可以正常工作。
所以快速搜索SO 将我带到:HTML formatted email not showing up at all in Gmail but is in other mail clients
我知道gmail 不支持<style> 但支持inline-style。
所以我尝试了这个:
<center>
Actual Mail Body <a class="elements" href="URL" style="it's style here">Element</a>
<center>
但现在我的问题是:hover伪类不能转换为inline-style,所以我尝试用JavaScript模仿为:
<center>
Actual Mail Body <a class="elements" href="URL"
OnMouseOver="this.style.background='#ddeeff';this.style['color']='#555555';"
onmouseout="back-to-original-css">Element</a>
<center>
但这对我没有帮助。
那么有什么方法可以让:hover 伪类在gmail 邮件客户端中工作?
我也不认为这是不可能的(看看你gmail帐户中的g+'s邮件。他们可以发送这样的邮件。)
欢迎任何想法、想法、建议,提前致谢。
【问题讨论】:
-
如果是 gmail 发送的,您是否使用 chrome 开发工具查看了电子邮件以了解他们是如何处理的?
-
@Jeff,我试过了,但我无法指出代码。另外我认为他们支持
javascript接收g+的邮件,因为它可以打开popup、aria-label、add freinds to your circle而无需访问g+的网站。 -
看起来 JavaScript 正在注入样式。你也可以这样做。这个 SO 可能会让你开始。 stackoverflow.com/a/15506705/2055676
标签: javascript css email gmail pseudo-class