您的位置:首页 > Web前端 > HTML

记一个发HTML格式邮件的问题

2015-06-10 17:41 393 查看
很早做了一个自动发邮件的程序,前一向发现Notes升级后反而CSS样式都没有了。

起初不以为意,反正格式数据在,客户也没说啥,后来觉得这样的态度要不得,小洞不补,大洞吃苦。

于是查查资料,发现浏览器里显示正常的CSS在邮件客户端里未必正常显示,看来我中招了。

发邮件的程序大概有七个,只有一个CSS样式正常,于是就拿它和其它六个对比。再结合网上资料,发现是以下原因导致的:

1.邮件里的HTML代码不支持CSS短格式,需要一行行单写。

2.邮件里HTML代码不支持TR样式,如果需要间隔色,着重色需要设置到TD上。

修改完后,新的样式诞生了:

sb.append("<style type=\"text/css\">");
sb.append(" body {");
sb.append("    margin: 5px auto;");
sb.append("    font-family: Arial;");
sb.append("    font-size: 14px;");
sb.append("    color: #444;");
sb.append("}");
sb.append("table{");
sb.append("    margin:0px;");
sb.append("    text-align: left;");
sb.append("} ");
sb.append("table caption{ ");
sb.append("    text-align:center;");
sb.append("} ");
sb.append("table th{ ");
sb.append("    background-color:#989898; ");
sb.append("    color:#ffffff; ");
sb.append("    text-align: center; ");
sb.append("    padding:7px 10px; ");
sb.append("    border-bottom:solid 1px #d2d1cb;");
sb.append("}");
sb.append("table tr td{ ");
sb.append("    background:#fbfcfc;  ");
sb.append("    border-bottom:solid 1px #e0e0e0; ");
sb.append("    padding:8px 10px; ");
sb.append("}");
sb.append("table tr td.odd{ ");
sb.append("    background:#f8f8f8; ");
sb.append("}");
sb.append("table tr td.aqua{ ");
sb.append("    background:#ccffcc; ");
sb.append("}");
sb.append("table tr td.error{ ");
sb.append("    background:#fdbf9a; ");
sb.append("}");
sb.append(" </style>");


显示效果比预订的在网页里调试的版本差不少,但那个在Notes里只有格式没样式像纯文本的效果,这个好歹在Notes里和网页里表现一致。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: