Каков наилучший метод форматирования электронной почты при использовании System.Net.Mail
-
19-08-2019 - |
Вопрос
Привет, я использую System.Net.Mail
чтобы отправить несколько электронных писем в формате HTML.
Каков правильный метод вставки css в сообщение электронной почты?
Я знаю, что могу применить форматирование к каждому элементу, но я бы предпочел использовать таблицы стилей..
Редактировать Я должен был упомянуть, что это для внутреннего приложения, и я ожидаю, что 99% пользователей будут использовать Outlook или другой клиент, но никогда hotmail или gmail и т.д.
Решение
Я всегда считал, что строго используя Теги и форматирование, совместимые с HTML 3.0 лучше всего подходит для всех читателей электронной почты и поставщиков услуг.
тем не менее, здесь есть CSS в электронной почте Статья это может дать ответ на ваш вопрос, вы найдете решения ваших проблем с css.
Другие советы
Почтовые клиенты не используют CSS единообразно, поэтому использовать CSS сложно.Эта статья может помочь - http://www.alistapart.com/articles/cssemail/
Вы могли бы сохранить стили в обычном CSS-файле, загрузить их с помощью Файл.Прочитать весь текст и вставьте их в HTML-шаблон письма
string letter = File.ReadAllText(Request.PhysicalApplicationPath + "letter.html");
string style = File.ReadAllText(Request.PhysicalApplicationPath + "style.css");
MailMessage message = new MailMessage();
message.Body = letter.Replace("{STYLE}", style);
Шаблон письма должен содержать {STYLE} в соответствующем месте
<head>
<title></title>
<style type="text/css">
{STYLE}
</style>
</head>
<body>
Эта ссылка это лучший способ, который я нашел, чтобы увидеть, что в чем работает, когда дело доходит до CSS в электронных письмах.
Однако, честно говоря, поддержка CSS настолько слаба, что вам лучше поступать так, как сказано в предыдущем постере, и придерживаться базового HTML (и да, это означает использование устаревших тегов шрифтов и т.д.).Тем более, что вы упомянули Outlook, и это (по крайней мере, последняя версия) является худшим виновником, когда дело доходит до ужасной поддержки CSS.