Когда тег шрифта, указывающий лицо, которое отображается, не знает, какой другой шрифт должен использовать средство визуализации? - PullRequest
0 голосов
/ 26 января 2020

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

Я видел это в HTML. Мы можем определить список имен шрифтов, и средство визуализации выбирает первое, которое находит в целевой системе.

Однако в электронных письмах я обычно вижу использование тега <font>. Но из того, что я знаю, это не позволяет выбирать между несколькими шрифтами. Мне интересно, есть ли способ позволить средству визуализации решать, какой шрифт выбрать, основываясь на том, что доступно на платформе зрителя, и при этом иметь подпись электронной почты, которая работает.

Из того, что я вижу, следующее не не работает:

<font name="Tahoma">
  <font name="Avenir">
    Alexis Wilke
  </font>
</font>

Если на моем компьютере не установлена ​​Avenir, он использует стандартное средство визуализации, а не Tahoma.

Если у меня есть <span> тег с атрибутом style="font-family: ...", а? Если средство рендеринга не понимает атрибут стиля, это может привести к отступлению от тега <font>? Это будет лучшая практика?

<font face="Tahoma">  <!-- would this one ever be useful? -->
  <font face="Avenir">
    <span style="font-family: Avenir, Tahoma, sans-serif;">
      Alexis Wilke
    </span>
  </font>
</font>

Я тестирую с Thunderbird, и это работает, но мне интересно, достаточно ли это универсально.

1 Ответ

2 голосов
/ 27 января 2020
<font face="Tahoma">  <!-- would this one ever be useful? -->
  <font face="Avenir">
    <span style="font-family: Avenir, Tahoma, sans-serif;">
      Alexis Wilke
    </span>
  </font>
</font>

Чтобы ответить на ваш вопрос в первой строке, <font face="Tahoma"> никогда не будет использоваться в этом случае, равно как и <font face="Avenir">.

Как вы и Алохчи обсуждали в комментариях, вы можете поместить несколько имен шрифтов в атрибуте style. Каждая система будет пробовать первый, если на нем не установлен шрифт, он будет переходить на следующий и так далее по цепочке, пока не найдет совпадение. Указание sans-serif в конце указывает системе использовать любой шрифт sans-serif по умолчанию, поэтому цепочка, скорее всего, закончится здесь, если он этого еще не сделал.


Если вы работаете над HTML подпись электронной почты, которую я бы предложил использовать <span style=""> подход, а не <font face="">. Возможно, вы получите лучший охват для почтовых клиентов.

Таким образом, вы можете удалить теги <font> из вашего примера и go примерно так:

<span style="font-family: Avenir, Tahoma, sans-serif;"> <!-- or a <div> -->
  Alexis Wilke
</span>
...