0

我需要在我编译的 Foundation for Emails 代码中添加一些自定义属性:

<div class="row" customAttribute="value" customAttributeName="value" customAttributeId="value">

当我使用 Inky 时,我可以编写如下代码:

<row class="xyz" customAttribute="value">

但它被从最终编译中删除。有没有我可以添加到代码中的提示,以便将其添加回 dist 代码?

4

1 回答 1

0

在 Foundation for Email (2.2) 的最新版本中,这应该是可能的。

多亏了Brandon Barringer,HTML 属性现在可以传递给行和列-提交

从这里引用:http: //zurb.com/article/1439/foundation-for-emails-2-2-what-a-ruby-gem

Brandon在此讨论中解释了拉取请求的背景,并提供了一个添加bgcolor属性的好例子。

在 node_modules/inky/lib/componentFactory.js 的底部,你会看到:

// <wrapper>
case this.components.wrapper:
 var classes = ['wrapper'];
      if (element.attr('class')) {
   classes = classes.concat(element.attr('class').split(' '));
 }
 return format('<table class="%s" align="center" ><tr><td class="wrapper-inner">%s</td></tr></table>', classes.join(' '), inner);

当它看到时构建表结构

添加一些代码以查找属性 bgcolor="#XXXXXX"。如果找到它,它会将值添加到它输出的 HTML 中。如果没有找到值,它会从 var 恢复为默认值,即 bgcolor=""。如果您有默认颜色,您也可以在其中输入一个值。

// <wrapper>
case this.components.wrapper:
 var classes = ['wrapper'];
 var bgcolor = ""; // corey add this line
 if (element.attr('class')) {
   classes = classes.concat(element.attr('class').split(' '));
 }
 // corey added the following statement
 if (element.attr('bgcolor')) {
   bgcolor = (element.attr('bgcolor'));
 } // stop new statement

 return format('<table class="%s" align="center" bgcolor="'+bgcolor+'"><tr><td class="wrapper-inner">%s</td></tr></table>', classes.join(' '), inner);

然后可以这样写墨迹降价:

<wrapper bgcolor="#b9cd98">
于 2016-07-27T14:37:12.853 回答