2013-05-07 3 views
2

Я очень новичок в CSS, и я пытаюсь отформатировать электронное письмо с помощью тега cfmail. Ниже приведен код:Таблица в теге cfmail

<cfmail from="[email protected]" 
      to="#InvestigatorEmail#" 
      subject="Reminder #flagReminder#:: Incident Report: #report_number#"> 

      <style> 
    BODY { 
     PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; BACKGROUND-COLOR: ##fff 
    } 
    BODY { 
     FONT-SIZE: 11px; COLOR: ##595959; LINE-HEIGHT: 14px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif 
    } 
    P { 
     FONT-SIZE: 11px; COLOR: ##595959; LINE-HEIGHT: 14px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif 
    } 
    LI { 
     FONT-SIZE: 11px; COLOR: ##595959; LINE-HEIGHT: 14px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif 
    } 

    A { 
     COLOR: ##0c479d; TEXT-DECORATION: none 
    } 
    A:hover { 
     BACKGROUND-COLOR: ##d3deed 
    } 

    table{ 
      width:100%; 
      border-bottom:1px solid ##eee; 
      clear:both; 
      color:##000; 
      margin-bottom:10px; 
      FONT-SIZE: 11px; COLOR: ##595959; LINE-HEIGHT: 14px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif 
     } 
    td { 
      padding:3px 4px; 
      vertical-align:top; 
      border-right:1px solid ##ddd; 
      color:##000; 
      font-weight:bold; 
      margin:0; 
     } 
    tr.odd { 
      background-color:##ffffcb 
     } 
    td.row-header { 
      width:100px; 
      font-weight:normal; 
     } 

    </style>   

The below Incident Report has been assigned to you on  #DateFormat(InvestigationAssigned_tms,"dd-mmm-yyyy")#</br></br> 

       <table width="720"> 
       <tr> 
        <td>Incident Report #</td> 
        <td>Person Involved</td> 
        <td>Incident Description</td> 
        <td>Incident Location</td> 
        <td>Status</th> 
        <td>Investigation Assigned Date</td> 
       </tr> 
       <tr> 
        <td>#report_number#</td> 
        <td>#NameOfPersonInvolved#</td> 
        <td>#IncidentDescription#</td> 
        <td>#IncidentLocationCity#</td> 
        <td>#reportStatus#</td> 
        <td>#InvestigationAssigned_tms#</td> 
       </tr> 
       </table> 
</cfmail> 

Все данные поступают из запроса, который я Перебор отправлять сообщения электронной почты с разными людьми. Мне нужны данные, относящиеся к одному человеку для отображения в табличном формате. Я не уверен, что я делаю неправильно здесь, так как это первый раз, когда я пытаюсь использовать HTML/CSS в письме.

ответ

5

Вам необходимо использовать атрибут type="html" на теге CFMAIL.

Возможно, вы также захотите обернуть свой HTML-контент в соответствующие теги HTML и Body, как вы обычно ожидаете от HTML-шаблона.

<cfmail from="[email protected]" 
      to="#InvestigatorEmail#" 
      subject="Reminder #flagReminder#:: Incident Report: #report_number#" 
type="html"> 
<html> 
<body> 
      <style> 
    BODY { 
     PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; BACKGROUND-COLOR: ##fff 
    } 
    BODY { 
     FONT-SIZE: 11px; COLOR: ##595959; LINE-HEIGHT: 14px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif 
    } 
    P { 
     FONT-SIZE: 11px; COLOR: ##595959; LINE-HEIGHT: 14px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif 
    } 
    LI { 
     FONT-SIZE: 11px; COLOR: ##595959; LINE-HEIGHT: 14px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif 
    } 

    A { 
     COLOR: ##0c479d; TEXT-DECORATION: none 
    } 
    A:hover { 
     BACKGROUND-COLOR: ##d3deed 
    } 

    table{ 
      width:100%; 
      border-bottom:1px solid ##eee; 
      clear:both; 
      color:##000; 
      margin-bottom:10px; 
      FONT-SIZE: 11px; COLOR: ##595959; LINE-HEIGHT: 14px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif 
     } 
    td { 
      padding:3px 4px; 
      vertical-align:top; 
      border-right:1px solid ##ddd; 
      color:##000; 
      font-weight:bold; 
      margin:0; 
     } 
    tr.odd { 
      background-color:##ffffcb 
     } 
    td.row-header { 
      width:100px; 
      font-weight:normal; 
     } 

    </style>   

The below Incident Report has been assigned to you on  #DateFormat(InvestigationAssigned_tms,"dd-mmm-yyyy")#</br></br> 

       <table width="720"> 
       <tr> 
        <td>Incident Report #</td> 
        <td>Person Involved</td> 
        <td>Incident Description</td> 
        <td>Incident Location</td> 
        <td>Status</th> 
        <td>Investigation Assigned Date</td> 
       </tr> 
       <tr> 
        <td>#report_number#</td> 
        <td>#NameOfPersonInvolved#</td> 
        <td>#IncidentDescription#</td> 
        <td>#IncidentLocationCity#</td> 
        <td>#reportStatus#</td> 
        <td>#InvestigationAssigned_tms#</td> 
       </tr> 
       </table> 
</body> 

Надеется, что это работает для вас?

Также обратите внимание, что ваши проблемы могут быть связаны с сложностями использования CSS в письмах ... что всегда является болью. Поддержка CSS в электронных письмах ограничена и очень проста. Это не проблема ColdFusion/CFML, это именно то, как электронные письма HTML сегодня.

Я бы порекомендовал перемещать ваш CSS как «встроенный» в теги HTML, так как почтовые клиенты часто выделяют теги STYLE.

Mikey.

1

Это действительно просто, вам просто нужно добавить тип в свой тег cfmail. Это будет выглядеть как

<cfmail to="recipient" from="sender" subject="subject" type="html"></cfmail> 
0

В качестве альтернативы, вы можете указать HTML часть с помощью cfmailpart тега. Это также позволяет указать отдельную версию открытого текста для всех, кто может использовать почтовый браузер, который не будет отображать HTML.

например.

<cfmail> 
     <cfmailpart type="html">... your table here ...</cfmailpart> 
     <cfmailpart type="text">A plaintext version for everyone else</cfmailpart> 
</cfmail> 

NB: не указывают как type="html" на <cfmail> теги и <cfmailpart> теги вместе. Либо сделайте одно или другое (проще всего сделать type="html" на <cfmail>, но я предпочитаю делать как открытый текст, так и HTML).

+0

Ошибка получения: начальный тег должен иметь соответствующий конечный тег. Явный конечный тег может быть предоставлен путем добавления. Если тело тега пуст, вы можете использовать ярлык . Если я удалю часть с таблицей и просто поместил все данные в обычный текст, она будет работать. Атрибут cfmailpart и type cfmail приводит к той же ошибке. – amsko

+0

Звучит как проблема в вашем CFML с незакрытым - очевидно, неправильно поставлен диагноз. @ Ответ Майкла, вероятно, помогает, обратите внимание на удвоенные октоторпы (##) в объявлениях CSS – duncan

Смежные вопросы