Задание семейства шрифтов

У автора могут быть и более определенные предпочтения по поводу шрифтов в представлении документа или элемента. Да и пользователь может захотеть создать таблицу стилей, определяющую конкретные шрифты, применяемые в представлении всех документов. В любом случае все это также осуществляется с помощью свойства font-family. Представим на мгновение, что все элементы h1 должны быть отформатированы шрифтом Georgia. Самое простое правило для этого могло бы быть таким:

h1 {font-family: Georgia;}

В результате агент пользователя будет отображать все элементы h1 данного документа шрифтом Georgia. Конечно, это правило предполагает, что шрифт Georgia доступен агенту пользователя. Если нет, агент пользователя вообще не сможет применить правило. Он не проигнорирует его, но если не сможет найти шрифт под названием Georgia, то отобразит элементы h1 применяемым по умолчанию шрифтом агента пользователя. Однако все не так плохо. Комбинируя конкретные шрифты с базовыми семействами, можно создавать документы, которые, если не в точности, то весьма близко соответствуют вашим намерениям. Продолжим предыдущий пример. Следующая разметка указывает, что агент пользователя должен применять шрифт Georgia, если он доступен, и другой шрифт с засечками, если Georgia недоступен.

h1 {font-family: Georgia, serif;}

Если у читателя не установлен шрифт Georgia, но есть шрифт Times, агент пользователя может применить Times ко всем элементам h1.


Хотя шрифт Times не является точным аналогом шрифта Georgia, он достаточно близок. По этой причине я убедительно рекомендую вам всегда указывать базовое семейство в любом правиле font-family. Этим вы реализуете механизм резервирования, обеспечивающий агентам пользователя возможность выбора, когда точное соответствие шрифтов недостижимо. Такая защитная мера очень полезна, поскольку в межплатформенной среде невозможно знать, у кого какие шрифты установлены. Несомненно, на любой машине, работающей под Windows, установлены шрифты Arial и Times New Roman, но на некоторых компьютерах Макинтош (особенно старых) их нет, то же можно сказать и о системах Unix. И наоборот, тогда как шрифты MarkerFelt и Charcoal обычны для всех последних Макинтошей, вряд ли пользователи Windows и Unix имеют в своем распоряжении хотя бы один из них, не говоря уже об обоих. Вот еще несколько примеров:

h1 {font-family: Arial, sans-serif;}
h2 {font-family: Charcoal, sans-serif;}
p {font-family: TimesNR, serif;}
address {font-family: Chicago, sans-serif;}

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


Скажем, все абзацы документа требуется представить шрифтом Times, но допускаются также шрифты TimesNR, Georgia, New Century Schoolbook и New York (все с засечками). Во-первых, определим порядок предпочтений для этих шрифтов, а затем выстроим их в список, разделяя запятыми:

p {font-family: Times, TimesNR, 'New Century Schoolbook', Georgia, 'New York', serif;}

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

Оцените статью: (0 голосов)
0 5 0

Статьи из раздела CSS на эту тему:
Абсолютные размеры
Варианты шрифтов
Загрузка шрифтов
Интеллектуальное сопоставление шрифтов
Использование единиц измерения длины

Вернуться в раздел: CSS / 5. Шрифт