【问题标题】:Use Velocity to generate HTML based email使用 Velocity 生成基于 HTML 的电子邮件
【发布时间】:2012-04-24 11:05:05
【问题描述】:

我试试这个教程http://www.java2s.com/Code/Java/Velocity/UseVelocitytogenerateHTMLbasedemail.htm 但是,当我添加 css 时,它看起来好像没有执行。

<HTML>
<HEAD>
  <TITLE>Pet Store Sale!</TITLE>
  <style type="text/css">
    body    {
            margin: 0 0 0 0;
            padding: 0 0 0 0;
            text-align: center; 
            background-color: #FFF;
            border-top: 3px solid #CCC;
            }


    #container  {
                position: relative;
                width: 860px;
                height: 1600px;
                margin: 84 auto 0 auto;
                padding: 0 0 0 0;
                background-color: #FFF;
                }


    p       {
            font-family: times, Times New Roman, times-roman, georgia, serif;
            color: #444;
            margin: 0 0 0 0;
            padding: 0 0 0 0;
            text-align: center;
            }


    .woodtwo        {
                    font-size: 22px;
                    line-height: 46px;
                    letter-spacing: -1px;
                    }


    .eyebrow        {   
                    font-size: 19px;
                    line-height: 29px;
                    }


    .caps           {
                    font-size: 14px;
                    line-height: 20px;
                    text-transform: uppercase;
                    }


    .copyone        {
                    font-size: 16px;
                    line-height: 20px;
                    }


    #line           {
                    border-bottom: 1px solid #CCC;
                    width: 748px;
                    margin: 10 0 20 56;
                    }



    #break          {
                    height: 30px;
                    }


    a:link          { color: #B95E27; text-decoration: none; } 
    a:visited       { color: #B95E27; text-decoration: none; }
    a:active        { color: #1A69A1; text-decoration: none; } 
    a:hover         { color: #888; text-decoration: none;}


    .grey           { color: #888; }


    .smallcaps      { font-size: 88%; }


</style>
</HEAD>
<BODY>

<div id="container">
    <p class="caps"><a href="">From Pet Store Sale</a></p>
    <div id="line"></div>
    <p class="eyebrow">
        <span class="grey">*</span>T<span class="smallcaps">HANK YOU FOR JOINING </span>P<span class="smallcaps">ET</span> S<span class="smallcaps">TORE</span> S<span class="smallcaps">ALE</span> A<span class="smallcaps">PPLICATION</span><span class="grey">*</span>
    </p>
    <p class="copyone">
        <i>You received this email because your registration process in Pet Store Sale is successful.<br/>
        To Confirm your registration, please visit this link <a href ="$link">Confirmation Link</a>.<br/>
        Your username : $username<br/>
        Password : $password<br/>
        If you have any questions about Application, please send an email to <a href="mailto:admin@store.com">admin@store.com</a></i> 
        <br><br><b>THANK YOU</b>
    </p>
    <div id="break"></div>

    <p class="woodtwo">
        <a href="">GETTING STARTED</a>
    <div id="line"></div>
    <div id="line"></div>
</div>

</BODY>
</HTML>

我也试过了

<link rel="stylesheet" href="./style/css/emailFormat.css" type="text/css"  media="screen" />

但它也不起作用。 如何在此页面上添加 css 的正确方法。谢谢

【问题讨论】:

  • 另外,我刚刚注意到,但是在电子邮件中使用 CSS 的相对路径听起来像是行不通的。嵌入 CSS 或发布它并引用该发布的资源。
  • 如果你是这个意思? '

    来自测试应用程序

    *T感谢您的加入TESTING MONITORING A应用*

    ....................'

  • 那么,如何以 html 格式发送电子邮件。我想用 java 发送一封漂亮的电子邮件。
  • 编辑您的问题并在其中添加速度模板。注释太小,不适合代码。对于漂亮的电子邮件,请查看我之前的评论。要么将 CSS 嵌入 HTML 代码中的一些 &lt;style&gt; 标记中,要么引用具有绝对 URL 的公共 CSS。
  • 我已经编辑了问题,希望符合您的要求

标签: java css velocity


【解决方案1】:

电子邮件客户端会忽略 CSS 类。如果您使用的是 Outlook Express 等独立客户端,divs 也将无法识别(不依赖于 float:left)。

我建议你改变你的 HTML 页面 -

  1. 删除&lt;body&gt;...&lt;/body&gt; 之外的所有内容
  2. 使用&lt;table&gt; 而不是&lt;div&gt;
  3. 不要使用&lt;style&gt; 标签来定义样式类,或者使用.css 文件来加载样式。而是在 &lt;td&gt; / &lt;table&gt; 容器中使用像 style="...." 这样的内联 CSS。

希望这对您的电子邮件模板设计有所帮助。

【讨论】:

  • 我收到的漂亮邮件是不是都是这样写的?
  • 这些是构建电子邮件模板的道德规范,适用于所有电子邮件网站(如 gmail.com)和独立客户端(如 Outlook Express)。但这并不意味着您收到的每封电子邮件都遵循这一点。
  • 您知道自动进行此更改的方法吗?
猜你喜欢
相关资源
最近更新 更多
热门标签