IF ELSE条件在DCE编辑器中的HTML内容中移动
了解如何在Campaign Classic中为DCE编辑器的HTML中实施IF ELSE条件。
描述 description
环境
- Adobe Campaign
- Adobe Campaign Classic
- Adobe Campaign Classic V7
问题/症状
如何添加 IF ELSE
条件导入HTML内容并在DCE编辑器模式下导入内容,例如:
<table>
<% if (recipient.email == 'xxxxx@email.com' ) { %>
<tr>
<td>A</td>
</tr>
<% } else { %>
<tr>
<td>B<td>
</tr>
<% } %>
</table>
条件的目的是在收件人的电子邮件地址等于时,向收件人显示内容的某些部分 xxxxx@email.com
. 保存消息后,我们发现 IF ELSE
条件将移动到电子邮件内容的顶部。
解决方法 resolution
此行为是符合预期的。
随着不断演变的HTML规范和现代规范,不可表格标记(如 [
(less-than)(percent-sign) (<
)(%)]
, [
(percent-sign)(大于) (%)(>
)]
标签,甚至常规HTML标签,如 img
标记和 div
标记不允许介于 tr
标记或 td
标记之间。
所有此类标记都会从 table
标记之前,填充于页面代码之后。
这是正确的用法:
<% if (recipient.email == 'xxxxx@email.com' ) { %>
<table>
<tr>
<td>A</td>
</tr>
</table>
<% } else { %>
<table>
<tr>
<td>B<td>
</tr>
</table>
<% } %>
此问题可以在V7 9349Campaign Classic中观察到,但无法在较低版本中观察到。
这是因为在旧版本中,底层控件是Internet Explorer 7,而在9349中,底层控件是IE 11(或Edge Chromium,具体取决于具体情况)。
之所以做出此调整,是因为较新的浏览器比旧的浏览器更符合HTML。
您应该按照HTML规范制作内容,所有现代浏览器都遵循该规范,因为用户在其浏览器和电子邮件客户端(如Outlook)中,不仅会在Campaign中查看内容,还会在Campaign之外查看内容。
如果您无法这样做,则可能会导致HTMLUI差异。
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f