跳到主要内容

CSS 电子邮件内联器

将 CSS <style> 块规则内联到每个匹配 HTML 标记的 style 属性中,用于大多数客户端会移除 <style> 标记的电子邮件 HTML。支持简单标记、类、ID 和标记+类选择器——没有后代组合子、伪类或特异性级联。

输入

When off, rules this tool can't inline are dropped instead of preserved.

输出

内联 HTML
 
这对您有帮助吗?

使用此工具的更多方式

REST API

curl -X POST https://api.iotools.cloud/v1/tool/css-email-inliner \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "htmlInput": "<style>p { color: red; }</style><p>Hello</p>",
    "keepUnsupportedRules": "true",
    "removeClassAttrs": ""
  }'

替换成您账户中的密钥。工具的字段即为请求体——没有额外包装。

让 AI 代理执行

Use the IOTools `css-email-inliner` tool (CSS Email Inliner) on this input:

YOUR_INPUT_HERE

将此粘贴给任何已连接 IOTools MCP 服务器的代理,再加上您的输入内容。

嵌入式小组件

<iframe
  src="https://iotools.cloud/embed/css-email-inliner/"
  width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
  title="CSS 电子邮件内联器 — iotools.cloud"
  sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
  allow="clipboard-write"
  style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>

把它放到您自己的页面上——免费,无需密钥,只需保留一个反向链接。

每次 API/MCP 调用费用5 积分起
需要更多积分?查看定价

也可通过

使用指南

此工具的功能

大多数电子邮件客户端(Gmail、Outlook 和许多其他客户端)在渲染 HTML 电子邮件时会删除 <style> 块和 <head> 内容,或以不可预测的方式忽略它们。唯一保证幸存的 CSS 是直接在每个元素上作为 style="..." 属性写入的 CSS。"CSS 内联化"是获取在普通 <style> 块中写入的规则并将其声明复制到它们匹配的每个元素的过程,以便电子邮件在任何地方都正确呈现,而不依赖于样式表支持。

此工具可以执行此操作:粘贴包含 <style> 块的 HTML,它将使用内联 style 属性重写每个匹配的标记,携带已解决的声明,然后删除(或可选地保持)原始 <style> 块。

诚实的范围:仅简单选择器

完整的 CSS 选择器引擎——后代组合子(div p)、子/兄弟组合子(div > pp + span)、伪类和伪元素(a:hoverp::first-line)、属性选择器([href])和特异性级联解决——是一个真正困难的解析问题,需要一个真实的浏览器 DOM 来查询。此工具以同构方式运行(浏览器、服务器和 API),没有可用的 DOM 解析器,因此故意尝试任何这些。

它支持的内容与原始 HTML 源的基于模式的扫描相匹配:

  • 标记选择器ptdh1
  • 类选择器.button
  • ID 选择器#header
  • 标记 + 类选择器p.intro

您的样式表中的任何其他内容——后代选择器、伪类、属性选择器、混合支持和不支持形式的逗号列表——都被分类为"不支持",默认情况下,保留在输出顶部的 <style> 块中,而不是被静默删除或不匹配。如果您希望输出根本没有 <style> 块,请关闭此选项。

也没有特异性级联:当两个或多个受支持的规则匹配同一元素时,在您的样式表中后出现的规则将对两者都设置的任何属性赢得——无论它是标记、类还是 ID 选择器。真实浏览器会在类选择器之上加权 ID 选择器,在标记选择器之上加权;此工具不会。元素的预先存在的 style="..." 属性始终被保留,并始终优先于从样式表中提取的任何内容。

如果您的电子邮件模板依赖于后代选择器、伪类或精确特异性解决,请改用基于构建工具的内联器——juicePremailer 都实现了完整的选择器引擎,是复杂样式表的正确选择。

如何使用

  1. 将包含 <style> 块的 HTML 粘贴到输入框中。
  2. 保持**"保留不支持的规则"**被选中,以在输出的顶部的 <style> 块中保留此工具无法内联的媒体查询、伪类规则和其他选择器(大多数支持媒体查询的电子邮件客户端仍将读取放在那里的 <style> 块)。取消选中以完全删除它们。
  3. 选中**"删除 class 属性"**,如果您希望在其样式被内联后从输出中删除 class="..."——这很有用,因为某些收件箱会标记仍然引用外部类名的电子邮件。
  4. 从输出面板复制或下载生成的 HTML。

编辑输入时,输出会自动更新。

FAQ

这会正确处理我的整个电子邮件模板吗? 它正确处理常见情况——标记、类、ID 和标记+类规则。如果您的样式表使用后代选择器、伪类或依赖 CSS 特异性来解决规则之间的冲突,此工具会将这些规则留在 <style> 块中而不是猜测,因此请在发送前检查输出。请参见上面的范围部分。

@media 查询会发生什么? 它们无法被内联(媒体查询未绑定到单个元素),因此当选中"保留不支持的规则"时,它们会留在输出的 <style> 块中。某些电子邮件客户端(特别是 Apple Mail 和较新版本的 Outlook/Gmail)确实会读取 <style> 块以进行媒体查询,即使在删除其他样式后也是如此——这正是此工具将其保留在那里而不是丢弃它的原因。

我的元素已经有 style="..." 属性——它会发生什么? 它被保留并始终优先于从样式表内联的任何内容,与真实浏览器如何优先考虑内联样式而不是样式表规则相匹配。

它会验证或修复损坏的 HTML 吗? 否——这是尽力而为的转换,而不是 HTML 验证器。在格式严重错误的输入上,它会回退到返回您的 HTML 不变,而不是生成混乱的输出或错误。

隐私

此工具完全在您的浏览器中运行。您的 HTML——包括任何嵌入的链接、跟踪像素或个性化内容——永远不会上传到服务器。

emailcss inlinerhtml emailinline stylesemail marketingcssnewsletter

喜欢这些工具?去掉广告吧。

一次性付款即可永久移除您账户中的所有广告。无需订阅,不追踪。