Salve pessoal!
Estou tentando formatar um email com CSS, alguém já fez isso?
Pra isso estou enviando uma estrutura em HTML no corpo do email, até ai, sem novidades.
Ele respeita as tags HTML, mas ignora todos os styles. Já tentei inline (em cada tag html) e com a tag style no Head do HTML. As folhas de estilo são sempre ignoradas.
Estou usando o componente Send Mail pra disparar a mensagem (TDN)
Alguém já fez isso ou faz idéia do que é necessário para que funcione?
Att, Wanderley
Ola,
Utilizo a classe TmailManager para envio agora mas tanto ela quando a SEND Mail respeitam o CSS Inline a importar via HEAD não é efetivo principalmente por conta dos clientes WEB de e-mail! o problema em questão nem se refere ao envio para a interpretação do CSS pelo cliente de e-mail, o Outlook me causa bastante problema por não respeitar o CSS que eu enviava.
Interessante o ponto. Faz total sentido pois utilizo o Outlook aqui, inclusive para o teste. Provável que falte alguma configuração para que ele interprete corretamente.
Obrigado pela observação, vou verificar.
Olá, Wanderley.
Eu tenho um fonte para envio de relatórios que utiliza a classe TMailMessage. Neste fonte, a formatação do corpo da mensagem é feita com CSS declarado no Head do HTML. Veja o trecho abaixo:
// Corpo do e-mail
cHtml += '<html xmlns="http://www.w3.org/1999/xhtml">'
cHtml += '<head><title></title><meta charset="iso-8859-1">'
/*** CSS ***/
cHtml += '<style type="text/css"> '
cHtml += ' p { '
cHtml += ' font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif; '
cHtml += ' font-size: 18px; '
cHtml += ' text-align: left; } '
cHtml += '</style> '
cHtml += '</head>'
cHtml += '<body>'
cHtml += '<p>Relatório '+cRptName+' enviado em '+dToC(Date())+'.</p>'
cHtml += '</body></html>'
cCorpo := cHtml
//Instância a classe apra criar uma nova mensagem
oMessage := TMailMessage():New()
oMessage:Clear()
//Define os atributos da classe TMailMessage
oMessage:cFrom := cConta
oMessage:cTo := cPara
oMessage:cCc := ""
oMessage:cBcc := ""
oMessage:cSubject := cAssunto
--> oMessage:cBody := cCorpo
oMessage:MsgBodyType( "text/html" )
Eu já utilizei esse fonte com os serviços de e-mail da Office365 e Gmail. Ambos funcionaram corretamente.
Eis um exemplo do e-mail gerado:
Espero que essa contribuição tenha sido útil.
att,
Maicon Macedo
Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.
A estrutura do HTML está bem parecida com a que criei. Vou fazer um teste com a TMailManager, porém acredito que possa ser algo com o client mesmo, ou alguma configuração que está faltando.
Assim que testar posto o feedback aqui.
Obrigado!
Os estilos HTML vão todos com o e-mail, o problema são os clientes de email que muitos não interpretam. O Thunderbird interpreta muito bem os CSS mais atuais, mas o outlook ainda está preso no CSS 1.0 e por isso os e-mails ficarão sempre feios. Recomendo enviar o email o mais simples possível. Aqui na empresa simplificamos todos para que sejam bem lidos em todos os clientes e dispositivos. Grandes empresas costumam enviar emails com formatação bem simples.