Как написать: посетил встроенный CSS? - PullRequest
17 голосов
/ 06 февраля 2012

Похожие темы: Как написать: hover во встроенном CSS?

Мне нужно создать HTML-письма с новостями по электронной почте.Все стили должны быть встроенными.(Согласно - http://www.campaignmonitor.com/css/ Не все почтовые клиенты распознают тег STYLE с тегом HEAD. Но все они предпочитают встроенные стили.)

Моя проблема: Дизайнер хочеттемный цвет фона + белые ссылки, поэтому я использую -

<a href="http://www.mySite.com" target="_blank">
  <span style="color: #ffffff;" >ici</span>
</a>

, но по умолчанию "посещаемый цвет" - темный.

Есть ли другой способ изменить "посещенный цвет"?

Спасибо,

Atara.

PS Я также попробовал расшифрованный канал BODY, атрибуты vlink.не работал.

Ответы [ 5 ]

25 голосов
/ 06 февраля 2012

Прежде всего, удачи!Электронная почта HTML прочно застряла на техническом уровне 1996 года.


Одна вещь, которую нужно попробовать, если вам на самом деле не нужен отдельный «посещенный» цвет, это добавить! Важный наspan.

Например, ваш почтовый клиент может иметь что-то подобное в своей таблице стилей:

a:visited * { color: #000 !important; }

В этом случае это переопределит ваш встроенный стиль.

Итак, попробуйте изменить свой диапазон на:

<a href="http://www.example.com" target="_blank">
    <span style="color: #ffffff !important;" >ici</span>
</a>

, чтобы переопределить его снова.

Быстрый тест в Chrome показывает, что a:visited * { ... !important} переопределяет встроенный стиль, но добавление !important обратно в диапазон работает нормально.


2017 Обновление

Руководство CSS CampaignMonitor теперь, похоже, рекомендует использовать <style>элемент в голове, а не встраивание всех стилей.Судя по другим ответам, это обеспечивает наилучшую совместимость с последней версией Outlook.

3 голосов
/ 19 января 2017

Почему бы не попробовать установить атрибут style внутри тега <a> и полностью удалить <span>?

Выполнение этого inline должно перезаписать свойство :visited.

Как это:

<a href="http://www.example.com" target="_blank" style="color: #ffffff !important;" >
    ici
</a>

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

Я думаю, что это лучшая практика и самый чистый способ сделать это.

2 голосов
/ 15 мая 2015

Это довольно старая ветка, но я подумал, что это кому-нибудь пригодится. В outlook 2013 у меня больше ничего не получалось, кроме использования старого

<style>a:visited{color:white !important}</style>

в теле

1 голос
/ 14 мая 2016

Я испробовал все эти идеи, описанные здесь в 2016 году (с Outlook 2010 и выше), ни одна из них не сработала для меня. Но я успешно использовал это решение: https://jamesnorthard.com/outlook-changing-visited-link-color-in-email/

Он использует сильный тег внутри тега привязки (код из своего блога): <a href="#" style="color:#333399;"><strong style="font-weight:normal;">My Link</strong></a>

Это даже решает проблему изменения цвета ссылки при пересылке электронной почты с помощью Gmail.

Надеюсь, это поможет кому-то еще!

0 голосов
/ 10 октября 2013

быстрое и грязное решение: добавьте vlink = "yourcolor" в тело вашего письма с новостями в формате HTML (работает с! DOCTYPE HTML PUBLIC "- // W3C //DTD HTML 4.01 Transitional // EN "" http://www.w3.org/TR/html4/loose.dtd")

...