PHP中CSS样式不起作用

3
我是一个变量。
 $mail_body = array(
    'text/html' => 
    '<style> .fb_term { font-weight:bold;
border-bottom: 1px solid #999999;    
}</style>' );

在我的代码中,我这样做:

$mail_body['text/html'] .= $a;
$a ='How <span class="fb_term" >Assist</span> me Please <span class="fb_term" >Grad</span>'

我收到了邮件,但是样式没有完成, 可能的问题是什么?

检查邮件的源代码,看看样式表是否还在。 - NoLifeKing
@NoLifeKing 我怎么能看到CSS?我在Gmail中检查了“显示原始邮件”,它就在那里。 - user1765876
如果您将span更改为div,那么它是否能正常工作? - NoLifeKing
如果您想为电子邮件添加样式,我认为最好使用内联样式而不是类(我认为这在所有邮件阅读器上都不起作用)。因此,您可以使用<span style="font-weigth:bold;">Grad</span>。 - Carlos Goce
你能提供你所生成的完整HTML吗? - Rob Baillie
@NoLifeKing,它也不能与div一起使用。 - user1765876
2个回答

0
问题可能出在电子邮件HTML上,这是样式设计非常困难的。不要使用类,而是为每个CSS位使用内联样式。
How <span style="font-weight:bold; border-bottom: 1px solid #999999;" >Assist</span> me Please <span style="font-weight:bold; border-bottom: 1px solid #999999;" >Grad</span>

0
你用什么邮件浏览器测试输出(Gmail、Hotmail、Yahoo还是Outlook)?你确定它们都支持style标签吗?你确定它们都支持你为元素使用的CSS指令吗?
我建议你看一下这个网站,它有一些关于CSS指令和邮件浏览器的测试数据。并且使用内联指令而不是style标签。例如:
<div style="background-color:black;color:white"></div>

还请确保将正确的邮件头Content-Type标记为text/html。如果仅为text,则无法正确渲染。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接