Aplicar formato HTML en el cuerpo del correo electrónico
-
20-09-2019 - |
Pregunta
Todavía estoy tratando de descubrir por qué no puedo aplicar el formato HTML en el cuerpo de un correo electrónico personalizado.¡Estoy seguro de que me falta algo o necesito un nuevo par de ojos!
Aquí está la información agregada al <head>
de la pagina web
<head runat="server">
<link href="~/MyStyle.css" rel="stylesheet" type="text/css" />
</head>
Mystyle.css
contiene lo siguiente
span.orange
{
color: #FF6D06;
font-family: tahoma;
font-size: 10pt;
}
y aquí viene la parte del cuerpo...
Dim HtmlString as string = "<span class='orange'>This one should be painted</span>"
que se envía mediante Net.Mail
Dim objMail As New Mail.MailMessage (blah, blah blah)
objMail.IsBodyHtml = True
ACTUALIZAR: Primero que nada gracias por tus comentarios.El correo electrónico en sí no tiene ninguna referencia con la hoja de estilo.Entonces, ¿qué opciones tengo además de adjuntar la hoja de estilo al correo electrónico?
Solución
Cuando he hecho esto, he incorporado normalmente la CSS en el cuerpo del correo electrónico:
<html>
<head>
<style type="text/css">
span.orange
{
color: #FF6D06;
...
}
</style>
</head>
...
Evitar hacer referencia a entidades externas (como hojas de estilo, imágenes, etc.) en el email del HTML. Estas referencias pueden no estar disponibles, dependiendo de la configuración del agente de correo del usuario. También, aprender sobre el soporte HTML en los programas de correo. Puede que no sea tan rico como usted espera. He aquí alguna información sobre el panorama , por ejemplo.
Otros consejos
Como han dicho otros, de definir los estilos en línea es la mejor opción. Aquí hay un par de artículos que le puede resultar útil:
Parece que va de este mal.
Su CSS debe ser en línea, y no externa. A continuación, sólo tiene todos sus estilos HTML y CSS como el cuerpo de su correo electrónico, y funcionará.
Usted realmente quiere evitar hacer referencia a archivos fuera tantas aplicaciones de correo electrónico bloquean las referencias.
La mayoría de los lectores de correo (tanto para escritorio como para web) no te ocupas muy bien de CSS:En general, es mejor no usar CSS externo y usar estilos en línea, a menudo es mejor usar tablas para formatear en lugar de divs,...
Y aquí, ¿dónde está tu CSS?¿Está al menos en algún servidor en alguna parte?
(es decir.no debería estar sólo en su máquina local, sino que debería ser accesible a través de algún tipo de URL)
atributo de color no funcionará para los e-mails, para la mayoría de los programas de correo que podría funcionar la primera vez que se envía el correo electrónico, sino que va a ser ignorado si se envía el e-mail.
Lo mejor es usar etiquetas HTML muy antiguas y tablas para dar formato y estilo de la dirección de correo, como el código pre-sin tablas.
Triste pero cierto, el apoyo a los correos electrónicos es todavía muy pobre.