Nano Hash - криптовалюты, майнинг, программирование

Как успешно встраивать изображения в HTML для отображения в клиентах веб-почты?

Я пытаюсь сделать подпись в HTML, используя изображения, закодированные в URL-адресах данных base 64. Вот пример:

<img src="data:image/png;base64,iVBORw0KGgoAAAAN...kJggg==">

Он отлично работает с почтовым программным обеспечением, таким как Mail на Mac или Thunderbird, но не работает с веб-почтой, такой как gmail, outlook, roundcube, hotmail ...

Ты хоть представляешь, как заставить его работать? Я действительно хочу поместить эти изображения прямо в исходный код, это более практично.

24.10.2012

  • Поскольку я использовал изображения base 64, вот код (немного длинный): pastebin.com/atqBMzi9 Я также стер вся информация, такая как ссылки, имена и т. д., потому что это личное. РЕДАКТИРОВАТЬ: я использую прозрачное изображение и изменяю фоновое изображение в стиле css. 24.10.2012
  • Это может быть более подходящим для webapps.stackexchange.com Это не вопрос программирования, вы просто хотите использовать необработанный HTML в веб-почте. подпись. Для Gmail в этом нет необходимости, поскольку для подписей предусмотрен редактор WYSIWYG. 24.10.2012
  • Хорошо, но как я могу сделать его тем, что работает на каждой веб-почте получателя? 24.10.2012
  • Получатель? Это уже другой вопрос. 24.10.2012
  • Дело в том, что я делаю эту подпись для компании. Они используют Почту на MAC, так что сейчас это работает для них, но они отправляют письма большому количеству людей и не знают, какой почтовой службой пользуются все клиенты. Так что хотелось бы, чтобы эта подпись была совместима со всеми почтовыми службами :) 24.10.2012
  • Связанный вопрос: stackoverflow.com/questions/8580355/ 24.10.2012

Ответы:


1

простой ответ?

Вы не можете. Gmail, Outlook и т. Д. Будут игнорировать изображения в формате base64.

Посетите этот сайт, чтобы узнать больше об этом

введите описание изображения здесь

Итак, судя по нашим результатам, явно не стоит использовать встроенные изображения в свои электронные письма. Все, что вы будете делать, это заставлять людей загружать закодированные изображения, которые они не смогут просмотреть.

24.10.2012
  • Вот дерьмо :( Я попробую сделать это по-другому. Я просто укажу URL-адрес источника, а затем загружу свои изображения на свой сервер. 24.10.2012
  • Так ли это до сих пор? 22.03.2018

  • 2

    Я использую встроенный SVG, и вот почему:

    • Красиво смотрится (для логотипов хорошо подходит векторная графика).
    • Никаких вложений (даже изображения, отправленные по почте как так называемые скрытые вложения электронной почты, как таковые отображаются во многих почтовых клиентах).
    • Никаких дополнительных HTTP-запросов (работает в автономном режиме после загрузки).
    • Нет вопроса «Вы хотите загрузить изображения…».
    • Для меня нормально, если он не отображается в Gmail и Outlook. Это своего рода изящная деградация.

    Но если вы действительно хотите отображать изображения в Gmail и Outlook, вам нужно будет загрузить их через HTTP.

    У парня из CSS-tricks есть хорошее руководство по SVG в электронном письме: https://css-tricks.com/a-guide-on-svg-support-in-email/

    Окончательное решение следующее:

    /* Resize an element that has a width and height of zero to full size */
    .showy {
      height: 100% !important;
      width: 100% !important;
    }
    <!-- Image: SVG -->
    <img class="showy" width="0" height="0" src="my-image.svg">
    <!-- Image: JPG -->
    <img class="no-showy" src="my-image.jpg">

    Но лично мне это не нравится, потому что я не хочу, чтобы клиент спрашивал пользователя, хочет ли он загрузить дополнительные ресурсы.

    17.09.2016
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..