圆形立方体如何为电子邮件着色以及如何在Delphi中实现圆形立方体配色方案?

时间:2014-04-10 11:30:07

标签: delphi roundcube

RoundCube为下面的纯文本电子邮件提供了一个很好的配色方案。

我想知道RoundCube如何做到这一点,以及如何在Delphi中实现这种配色方案?

>>>> Peter says: 
>>>> Peter says: 
>>> Jane says:
>>> Jane says:
>> Peter says: 
>> Peter says:
> Jane says:
> Jane says:
Peter says: 
Peter says: 

roundcube

1 个答案:

答案 0 :(得分:5)

我不知道RoundCube是如何做到的;我不熟悉这个产品。但是,使用HTML和CSS可以直接实现效果。

我使用嵌套的blockquote元素作为电子邮件引号:

<blockquote>
  <blockquote>
    <blockquote>
      <blockquote>
        <blockquote>
          <blockquote>
            Peter says:<br/>
            Peter says:
          </blockquote>
          Jane says:<br/>
          Jane says:
        </blockquote>
        Peter says:<br/>
        Peter says:
      </blockquote>
      Jane says:<br/>
      Jane says:
    </blockquote>
    Peter says:<br/>
    Peter says
  </blockquote>
  Jane says:<br/>
  Jane says:
</blockquote>
Peter says:</br>
Peter says:

然后我根据CSS中的嵌套级别对边框和文本进行着色:

body {
  font-family: 'Times';
}
blockquote {
  background-color: #eee;
  border-left: 3px solid #00f;
  border-right: 3px solid #00f;
  color: #00f;
  padding: 0.6em 0.9em 0.3em;
  margin: 0 0 0.3em;
}
blockquote > blockquote {
  color: #0f0;
  border-color: #0f0;
}
blockquote > blockquote > blockquote {
  color: #b22;
  border-color: #b22;
}

您可以查看a live demo

RoundCube是一个Web电子邮件程序,因此您可以查看它生成的HTML,如果您想确认它是如何工作的。

关于该任务最难的部分是解析电子邮件以识别同一级别的文本块,但这超出了这个问题的范围。