Flex布局在邮件客户端中完全失效,必须使用table布局;所有CSS需内联,用width、align等属性替代flex属性,并通过嵌套table实现分栏,且须真机测试。

Flex布局在Gmail、Outlook等邮件客户端中直接失效
因为绝大多数邮件客户端(包括Gmail Web版、Outlook Desktop、Apple Mail)根本不解析 display: flex。它们的HTML渲染引擎基于老旧的HTML 4 / CSS 2.1子集,连 float 和 position 都支持不全,更不用说Flexbox这种CSS3特性。你写的 justify-content: center 或 flex-direction: column 在代码里看着很优雅,发出去后实际被客户端当作无效声明直接丢弃——结果就是所有元素堆在左上角,或按文档流胡乱排列。
Table布局是邮件模板唯一可靠的结构方案
不是“推荐用”,而是“必须用”。 邮件客户端会主动剥离 浏览器里渲染完美 ≠ 邮件里能看。Gmail Android App、Outlook iOS、Apple Mail 对 table 嵌套深度、 是邮件客户端唯一普遍支持的布局容器,且支持内联
width、align、cellpadding、cellspacing 等属性。关键点在于: 固定总宽度(避免Gmail自动缩放)
替代 text-align: center 或 justify-content
实现“行内分栏”:比如左右两栏,就写两个并排的
,各自设 width="50%"
border-collapse: collapse —— Outlook 不认,要给每个 单独加 style="border: 1px solid #ccc;"
CSS内联化不是可选项,而是硬性要求
块,甚至过滤掉 class 名。所以:style="" 属性里,例如:
nth-child 做条纹表格——它在Outlook和Gmail中完全不生效,改用手动给奇偶 写不同 bgcolor 或内联 background-color
margin 和 padding 要慎用:margin 在多数客户端被忽略,优先用 padding 或空 控制间距
真机测试比本地预览重要十倍
width 百分比、img 的 alt 处理都各不相同。最容易被忽略的是:
并强制添加 !important,但只对它认得的属性有效;font-size 会自动放大,line-height 必须显式设为 1.4 类固定值;alt,且建议用 height/width 属性而非CSS控制尺寸,否则QQ邮箱可能拉伸变形。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











