发邮件问题
我用MailMessage来发邮件,发现如果邮件某行的第一个字符是.(点),
在收到邮件时,这个点就会不见了,请问这是为什么?
例如:
mailBody是邮件的内容,是一段html
...
<style type= "text/css ">
body {background: #FFFFFF; }
.ebcopyright {font: 12px Arial, Helvetica, sans-serif;color: #333333;}
.nav-supp a {color: #3B6A02;text-decoration: underline;}
</style>
...
MailMessage myMail = new MailMessage();
myMail.Body = mailBody;
myMail.BodyFormat = MailFormat.Html;
//...主题以及收件人等信息
Mail.SmtpMail.Send(myMail);
我收到邮件时发现邮件的内容好像没有用CSS一样,于是就看一下html源代码,发现收到的内容是这样的
...
...
<style type= "text/css ">
body {background: #FFFFFF; }
ebcopyright {font: 12px Arial, Helvetica, sans-serif;color: #333333;}
nav-supp a {color: #3B6A02;text-decoration: underline;}
</style>
...
.ebcopyright变成了ebcopyright,.nav-supp变成了nav-supp
后来我把这一段css改成下面这样就正常
<style type= "text/css ">
body {background: #FFFFFF; }.ebcopyright {font: 12px Arial, Helvetica, sans-serif;color: #333333;}.nav-supp a {color: #3B6A02;text-decoration: underline;}
</style>
就是说,只有在不用.(点)做行的开头第一个字符时才正常
------解决方案--------------------会不会有mail.XXX屬性可以設置一下呢?
不解中,UP!!
------解决方案--------------------我没装有.net1.X环境,没办法测试,我觉得很有可能是版本的原因.
在.net2.0下,MailMessage组件封装在using System.Net.Mail命名空间下,使用时没出现楼主说的丢(.)号的情况.
楼主可以换一个实现思路:不要做成独立的CSS,直接在相应的控件里写样式,如: <td style= "... "> ,把你的CSS写到控件的stype属性里.