Ответ 1
Проверьте premailer.dialect.ca онлайн-конвертер или Python script, чтобы сделать это.
Когда вы посмотрите http://www.campaignmonitor.com/css/, вы узнаете, что вам нужно встроить встроенные стили в свой HTML, чтобы ваша электронная почта читать в любом почтовом клиенте.
Знаете ли вы какие-либо инструменты или script для автоматической конвертации HTML файла с объявленным в HTML файл только с встроенными атрибутами стиля CCS?
Изменить: любое решение Javascript (т.е. http://www.robertnyman.com/2006/04/24/get-the-rendered-style-of-an-element/)? С jQuery?
Проверьте premailer.dialect.ca онлайн-конвертер или Python script, чтобы сделать это.
Вот список веб-готовых к использованию инструментов инкрустирования, пара была упомянута ранее. Если есть какие-то пропущенные, не стесняйтесь редактировать и добавлять их. Я не могу обещать, что каждая работа рекламируется, поэтому отбрасывайте комментарии, но не стреляйте в посланника...
И вот один из них, который работает в обратном порядке (un-inlining your css)
Если вы хотите иметь PHP-решение, вы можете попробовать CssToInlineStyles.
Два варианта С#:
http://chrispebble.com/Blog/7/inlining-a-css-stylesheet-with-c
PreMailer.Net - https://github.com/milkshakesoftware/PreMailer.Net
Не тестировалось ни одно из них, но будет отправлено обратно, если/когда я это сделаю.
Возможно, вы захотите взглянуть на PostageApp.
Одна из его очень сильных функций заключается в том, что у нее очень надежная система шаблонов, которая может автоматически встраивать HTML и CSS без каких-либо проблем.
( Полное раскрытие: Я - менеджер продуктов для PostageApp.)
Этого недостаточно, чтобы просто вставить свой CSS. Нет никаких стандартных стандартов относительно того, как будет отображаться HTML-письмо в любом почтовом клиенте. Все они делают это по-другому, и чем больше вы разрабатываете свой адрес электронной почты, тем больше вероятность того, что он сломается в большем количестве клиентов. Многие профессионалы в этом пространстве просто используют изображения и таблицы и, возможно, некоторые цвета фона, но ничего больше. Всегда включайте ссылку на веб-сайт, на котором есть рабочая копия электронного письма, и всегда предоставляйте простой текстовый вариант.
Я написал библиотеку Node.js под названием Styliner, которая вставляет CSS в Javascript на стороне сервера.
Он также поддерживает таблицы стилей LESS (и поддерживает плагины для других форматов)
Это может быть немного слишком поздно, но если вы хотите сделать свой HTML максимально возможным для маркетинга по электронной почте (путем вложения вашего css и использования кучи других полезных инструментов), используйте Premailer. Это бесплатно и, конечно же, сделано в партнерстве с самим CampaignMonitor.
Надеюсь, что это поможет.
Решение javascript от tikku здесь: https://tikku.com/open-source/utilities/css-inline-transformer/
Я немного опаздываю в игру, но, надеюсь, это поможет кому-то.
Я нашел этот симпатичный маленький jQuery/javascript метод, который можно встроить в страницу - http://devintorr.es/blog/2010/05/26/turn-css-rules-into-inline-style-attributes-using-jquery/
Я немного его отредактировал для поддержки IE, а также для поддержки страницы с несколькими прикрепленными CSS файлами с использованием стилей в правильном порядке.
$(document).ready(function ($) {
var rules;
for(var i = document.styleSheets.length - 1; i >= 0; i--){
if(document.styleSheets[i].cssRules)
rules = document.styleSheets[i].cssRules;
else if(document.styleSheets[i].rules)
rules = document.styleSheets[i].rules;
for (var idx = 0, len = rules.length; idx < len; idx++) {
if(rules[idx].selectorText.indexOf("hover") == -1) {
$(rules[idx].selectorText).each(function (i, elem) {
elem.style.cssText = rules[idx].style.cssText + elem.style.cssText;
});
}
}
}
$('style').remove();
$('script').remove();
$('link').remove();
});
Затем страница может быть скопирована/вставлена в тело электронной почты.
Еще один из mailchimp - http://beaker.mailchimp.com/inline-css
Для PHP-программистов: проверьте этот онлайн-конвертер или PHP script, чтобы сделать это.