【问题标题】:Is it possible to use CSS classes in mailer template?是否可以在邮件模板中使用 CSS 类?
【发布时间】:2012-01-08 09:20:01
【问题描述】:

我正在使用 Ruby on Rails 3.1.0,我想知道是否可以在邮件模板中使用 CSS 类 (.html.erb)。目前,为了设置电子邮件样式,我使用如下 HTML 代码:

<div style="margin: 4px 0 12px;">
  <span style="font-size: 14px;">
    ...
  </span>
</div>

那么,是否可以在邮件模板中使用 CSS 类?如果是这样,在哪里和如何我应该声明和使用这些类?

【问题讨论】:

  • 没有 CSS 类这样的东西。被错误地称为“CSS 类”的事物包括 HTML 类、CSS 类选择器、CSS 选择器、CSS 规则集、CSS 规则和 CSS 属性。
  • @Quentin - 感谢您的提示。

标签: ruby-on-rails css ruby ruby-on-rails-3 email


【解决方案1】:

类似于 1995 年的代码,因为电子邮件客户端(尤其是 Outlook 2007、Gmail、Hotmail)支持的 HTML 元素和 CSS 属性集非常有限。使用表格、内联样式、演示元素(即&lt;b&gt; 而不是font-weight:bold)。

关于电子邮件编码的有用链接:

【讨论】:

    【解决方案2】:

    样式表倾向于被某些邮件客户端(尤其是 Web 邮件服务)剥离,因此建议使用样式属性。

    【讨论】:

      【解决方案3】:

      是的。 ERB 允许您编写通常会编写的任何 HTML。

      但是,由于它是电子邮件,而且客户端在一致地呈现 CSS 方面出了名的差,因此您应该使用示例中的内联格式。 (我知道这很可怕)。

      您可以在邮件模板的顶部插入&lt;style&gt;.myclass { color: red; }&lt;/style&gt;,然后在模板中使用&lt;div class="mclass"&gt;,但这个样式标签很可能会被客户端删除。

      【讨论】:

        【解决方案4】:

        你很幸运,因为有一个名为 Roadie 的 gem 可以优雅地解决这个问题。有关详细信息,请参阅 RailsCasts 剧集Sending HTML Email。

        【讨论】:

          猜你喜欢
          • 2014-07-28
          • 2015-06-08
          • 1970-01-01
          • 1970-01-01
          • 2017-05-05
          • 1970-01-01
          • 2018-04-25
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多