我有一个代码 hack,可以在除 Windows 邮件 10 和 11 之外的大多数深色模式客户端中保留黑色背景上的白色文本。
<!--[if mso 16]> 条件语句适用于 Outlook(OL 365、OL 2021)桌面,但在 Windows Mail 10 和 11 中无法正确显示。Windows Mail 喜欢 <! 中使用的 css --[if !mso 16]> 条件语句块。是否有专门针对 Windows Mail 10 和 11 的 mso 条件代码?
是否有其他方法可以将样式应用于单独的 Outlook(OL Office 365 Dark、Outlook 2021 Dark)和 Windows Mail?
<!--[if gte mso 16]>
<style>
.keep-white {
mso-style-textfill-type:gradient;
mso-style-textfill-fill-gradientfill-stoplist:"0 #FFFFFF 0 100000\,100000 #FFFFFF 0 100000";
color:#000000 !important;
}
</style>
<![endif]-->
<style>
u + .body .gmail-screen { background:#000; mix-blend-mode:screen; }
u + .body .gmail-difference { background:#000; mix-blend-mode:difference; }
</style>
<!--[if (gte mso 9)|(IE)]>
<table align="center" cellpadding="0" cellspacing="0" border="0" style="width:640px;background-color:#000000;" role="presentation">
<tr>
<td align="center">
<![endif]-->
<table role="presentation" style="width:100%;max-width:640px;Margin:0 auto;" cellspacing="0" cellpadding="0" bgcolor="#000000" align="center">
<tr>
<td class="body" style="background: linear-gradient(to bottom, #000000 0%, #000000 100%);max-width:640px;" width="100%" valign="top" align="center">
<!--[if gte mso 9]>
<v:rect xmlns:v="urn:schemas-microsoft-com:vml" fill="true" stroke="false" style="width:640px;" fillcolor="#000000">
<v:fill type="gradient" color2="#000000"/>
<v:textbox style="mso-fit-shape-to-text:true" inset="0,0,0,0">
<center>
<![endif]-->
<table role="presentation" style="width:100%;max-width:640px;Margin:0 auto;" cellspacing="0" cellpadding="0" align="center">
<tr>
<td style="padding:40px 10px 40px;" align="center">
<p style="padding:0;margin:0;font-family:'Open Sans',Helvetica, Arial,sans-serif;font-size:24px;line-height:34px;color:#ffffff;text-align:center;" class="txt16">
<!--[if mso 16]><strong style="color:#ffffff;" class="keep-white"><![endif]-->
<!--[if !mso 16]><!-- --><strong style="font-weight:400;color:#ffffff;" class="gmail-screen"><span class="gmail-difference"><!--<![endif]-->
Combo text hack. Works everywhere except Windows 10 & 11 mail.
<!--[if mso 16]></strong><![endif]-->
<!--[if !mso 16]><!-- --></span></strong><!--<![endif]-->
</p>
</td>
</tr>
</table>
<!--[if gte mso 9]>
</center>
</v:textbox>
</v:rect>
<![endif]-->
</td>
</tr>
</table>
<!--[if (gte mso 9)|(IE)]></td></tr></table><![endif]-->
我应用了针对 Outlook 和 Windows Mail 10 和 11 的 <!--[if mso 16]> 条件语句,但发现 Windows Mail 深色模式处理 css 的方式与 Outlook 深色模式不同。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
Outlook 深色模式
深色模式元标签
针对深色模式的 Android/Outlook.com
可以在此处找到有关深色模式的更多信息:
https:// www.litmus.com/blog/the-ultimate-guide-to-dark-mode-for-email-marketers/
您可以使用以下两种方法之一来定位 Windows Mail:
/* Windows Mail (Phone & Surface) */ _:-ms-input-placeholder, :root .your-class-name { /* Replace this comment with your styles */ }或
/* Windows Mail (Phone & Surface) */ _:-ms-fullscreen, :root .your-class-name { /* Replace this comment with your styles */ }这两篇文章均由 Mark Robbins 提交至 https://howtotarget.email/。