发送邮件到qq邮箱、126邮箱丢失样式

使用java发送html到qq邮箱后,发现采用“外部样式表”的css都没有
外部样式表:

<link rel="stylesheet" type="text/css" href="css/my.css">

推测邮箱是从出于安全策略(推测是防止CSRF跨站请求伪造)才会过滤掉外部引用的,为了绕过这个拦截,改为使用“内部样式表”写法

<head><style type="text/css"></style>
</head>

发送后qq邮箱可以了,但是126邮箱不行,126邮箱比qq邮箱更严格,居然把style标签里的内容全部过滤掉了,这说明不同的邮箱过滤策略不一样。
那大企业发的邮件,为啥样式都显示正常?为了一探究竟就找了领英的邮件看了看,发现它将样式都写在标签了,也就是“内联式”写法。

发送邮件的邮件内容,可以去掉head、body,只留需要的部分,因为,邮箱会过滤head、body,并将这个两个标签的样式全部过滤掉,所以发送html邮件时,直接上内容就好,比如

   <div style="background-image: url('http://domain:port/a.png');font-size:14px;"><h1 style="text-align: center;">邮件标题</h1><p>邮件内容</p></div>

发送邮件到qq邮箱、126邮箱后丢失样式相关推荐

  1. Nodejs 如何发送邮件(Gmail 和 126邮箱)

    更多功能前往github下载查看,欢迎star 发邮件类库 安装nodemailer npm install nodemailer --save-dev 查看git 源码 使用Gmail,简单粗暴(提 ...

  2. matlab 发送 126 邮件,python实现126邮箱发送邮件

    用Python发送126邮件,供大家参考,具体内容如下 今天想做个自动化邮件提醒的功能,最近刚好在学习python,都说python那么强大,想试一下python能否搞定,搜一下资料,果真可以,而且又 ...

  3. java模拟网易邮箱登录_java实现163邮箱发送邮件到qq邮箱成功案例

    下载和上传附件.发送短信和发送邮件,都算是程序中很常用的功能,之前记录了文件的上传和下载还有发送短信,由于最近比较忙,邮件发送的功能就没有时间去弄,现在终于成功以163邮箱发送邮件到qq邮箱,以下是相 ...

  4. Python 使用第三方 SMTP 服务发送邮件(qq邮箱)

    原文链接:http://www.runoob.com/python/python-email.html Python SMTP发送邮件 SMTP(Simple Mail Transfer Protoc ...

  5. 通过126邮箱SMTP服务发送邮件到指定邮箱

    测试环境清单:smtplib函数库 Python3.7 Windows10 程序源码 import smtplib from email.header import Header from email ...

  6. java 给qq邮箱发邮件_java实现163邮箱发送邮件到qq邮箱成功案例

    这篇文章主要为大家分享了java实现163邮箱发送邮件到qq邮箱成功案例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 下载和上传附件.发送短信和发送邮件,都算是程序中 ...

  7. 163邮箱java通用下载_java_java实现163邮箱发送邮件到qq邮箱成功案例,下载和上传附件、发送短信和 - phpStudy...

    java实现163邮箱发送邮件到qq邮箱成功案例 下载和上传附件.发送短信和发送邮件,都算是程序中很常用的功能,之前记录了文件的上传和下载还有发送短信,由于最近比较忙,邮件发送的功能就没有时间去弄,现 ...

  8. 使用telnet通过qq的SMTP邮箱服务器发送邮件

    使用telnet通过qq的SMTP邮箱服务器发送邮件 telnet的安装 开启账号的SMTP服务,获取授权码 使用telnet发邮件 telnet的安装 telnet是Windows的一个远程连接工具 ...

  9. python自动发送邮件不需要发件邮箱_python使用QQ邮箱实现自动发送邮件

    最近用到Python自动发送邮件,主要就是三步,登录邮件.写邮件内容.发送,用到的库是 smtplib 和 email,直接使用pip安装即可 我使用的是QQ邮箱,首先需要设置QQ邮箱POP3/SMT ...

最新文章

  1. 变体类的使用 package record case【转载】
  2. cms基于nodejs_我如何使基于CMS的网站脱机工作
  3. [原]五分钟搭建gitserver
  4. 【转】首先为人编写程序,其次才是计算机
  5. 7.6~7.20集训总结(一)
  6. boost::log::attribute_value_set用法的测试程序
  7. PDI的steps:(5:Add XML)
  8. 10月31 安装redis报错
  9. eclipse集成testng插件
  10. ToStringBuilder学习总结
  11. 36.伪造目标不可达的ICMP数据包
  12. VC14(VC2015)安装失败,0x80240017 - 未指定的错误,解决办法
  13. 基于matlab的图像复原,MATLAB在图像复原中的应用
  14. Windows10无法启动windows安全中心服务怎么办?
  15. Android Apk编译的apk安装失败解决
  16. python实现微信付款码支付(刷卡支付)(纯python)
  17. 90后,为什么我建议你不要老是加班?
  18. 视觉slam十四讲 pdf_《视觉SLAM十四讲》学习笔记+关键知识点汇总(一)
  19. 金融知识小科普 - 宽基指数
  20. C语言学习之认识exit()函数

热门文章

  1. ERROR in ./src/.umi/core/routes.ts 402:19-404:109Module not found: Error: [CaseSensitivePathsPlugin
  2. 赵福全:做强汽车产业应在五个方面努力
  3. Python 特殊方法之slots
  4. GCN学习:Attributed Graph Clustering via Adaptive Graph Convolution
  5. html页面嵌入markdown,在页面中插入Markdown编辑器
  6. OpenI/O 2020 启智开发者大会|OpenI启智社区重要成果发布,贡献中国开源力量
  7. 年轻人,不讲武德?Loki告警日志内容的骚方法
  8. 收藏!第十届全球互联网架构大会全日程及参会指南公布
  9. KETTLE基础概念
  10. 发布项目时,出现deploy失败的情况