
Использование нескольких шрифтов на веб-странице позволяет разграничить визуальные блоки и улучшить читаемость. В CSS подключение шрифтов происходит через @font-face или ссылки на внешние ресурсы, например Google Fonts. Для каждого шрифта необходимо указать формат файла, чтобы обеспечить поддержку в разных браузерах: woff2 для современных, woff и ttf для устаревших.
При назначении нескольких шрифтов важно определить иерархию: основной, заголовочный и резервный. Основной шрифт подключается первым, резервные указываются через запятую, чтобы браузер автоматически подставлял альтернативу при проблемах с загрузкой. Например: font-family: ‘Roboto’, ‘Arial’, sans-serif;.
Размер и вес шрифта задаются через свойства font-weight и font-style. Для оптимизации скорости загрузки рекомендуется подключать только нужные начертания, избегая полного набора всех стилей, если используются только обычный и полужирный варианты.
При работе с локальными файлами важно хранить их в структурированных папках и использовать относительные пути в CSS. Это облегчает поддержку сайта и предотвращает ошибки при переносе проекта на сервер. Для внешних шрифтов рекомендуется использовать предзагрузку с <link rel=»preload»> или указание display: swap в @font-face, чтобы текст оставался читаемым до полной загрузки шрифта.
Выбор формата шрифтов для разных браузеров
Разные браузеры поддерживают различные форматы шрифтов, поэтому для корректного отображения текста рекомендуется подключать несколько вариантов одного шрифта. Основные форматы:
- WOFF2 – современный формат с высокой степенью сжатия, поддерживается последними версиями Chrome, Firefox, Edge и Safari. Используется для экономии трафика и ускорения загрузки.
- WOFF – совместим с большинством браузеров, включая старые версии, имеет более низкий уровень сжатия, чем WOFF2.
- TTF (TrueType) – универсальный формат, поддерживаемый практически всеми платформами, но требует больше места и времени на загрузку.
- OTF (OpenType) – расширение TTF с поддержкой дополнительных функций, таких как лигатуры и вариативные начертания, совместимость аналогична TTF.
- SVG – используется преимущественно на старых версиях iOS для корректного отображения шрифтов в Safari Mobile до версии 5.1.
Для подключения нескольких форматов в CSS используется директива @font-face с указанием источников в порядке приоритета. Пример:
@font-face {
font-family: 'OpenSans';
src: url('fonts/OpenSans.woff2') format('woff2'),
url('fonts/OpenSans.woff') format('woff'),
url('fonts/OpenSans.ttf') format('truetype');
font-weight: 400;
font-style: normal;
}
Рекомендации:
- Подключайте WOFF2 в первую очередь для современных браузеров.
- Добавляйте WOFF как резервный вариант для старых версий Chrome, Firefox и Edge.
- TTF используйте только при необходимости поддержки крайне старых браузеров или систем.
- Используйте SVG исключительно для старых версий iOS, если нужно точное отображение шрифта.
- Старайтесь минимизировать количество форматов, чтобы ускорить загрузку страниц.
Подключение Google Fonts через CSS

Google Fonts предоставляет доступ к сотням шрифтов, которые можно подключать напрямую через CSS без загрузки локальных файлов. Для этого используется ссылка на сервис в секции <head> или директива @import.
Пример подключения через тег <link>:
<link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap" rel="stylesheet">
В этом примере подключается шрифт Roboto с обычным и полужирным начертанием. Параметр display=swap обеспечивает замену текста системным шрифтом до полной загрузки Google Fonts.
После подключения шрифта его можно использовать в CSS через font-family:
body {
font-family: 'Roboto', sans-serif;
}
Для оптимизации скорости загрузки рекомендуется:
- Выбирать только нужные начертания и веса шрифта.
- Использовать display=swap для предотвращения пустого текста при загрузке.
- Сочетать Google Fonts с резервными шрифтами системы, чтобы обеспечить корректное отображение при проблемах с загрузкой.
Импорт локальных шрифтов с помощью @font-face

Для использования собственных шрифтов на сайте применяется директива @font-face, позволяющая подключить файлы, хранящиеся на сервере. Это обеспечивает полный контроль над стилями и поддержкой различных форматов.
Пример подключения шрифта:
@font-face {
font-family: 'MyFont';
src: url('fonts/MyFont.woff2') format('woff2'),
url('fonts/MyFont.woff') format('woff'),
url('fonts/MyFont.ttf') format('truetype');
font-weight: 400;
font-style: normal;
font-display: swap;
}
Рекомендации при работе с локальными шрифтами:
- Размещайте шрифты в отдельной папке, например /fonts, и используйте относительные пути.
- Подключайте только те форматы, которые необходимы для целевых браузеров. WOFF2 для современных, WOFF или TTF для старых.
- Используйте свойство font-display: swap, чтобы текст отображался системным шрифтом до полной загрузки.
- Указывайте вес и стиль для каждого варианта шрифта, чтобы браузер корректно применял нужное начертание.
- Минимизируйте размер файлов шрифтов через сжатие и удаление ненужных глифов, чтобы ускорить загрузку страниц.
Назначение разных шрифтов для заголовков и текста

Разделение шрифтов для заголовков и основного текста помогает визуально структурировать страницу и улучшает читаемость. Обычно заголовки используют более выразительные или полужирные шрифты, а основной текст – легко читаемые без засечек.
Пример подключения через CSS:
h1, h2, h3 {
font-family: 'Montserrat', sans-serif;
font-weight: 700;
}
p, li {
font-family: 'Roboto', sans-serif;
font-weight: 400;
}
Рекомендации по выбору шрифтов:
- Для заголовков используйте контрастные шрифты, которые привлекают внимание.
- Для основного текста выбирайте шрифты с высокой читаемостью на разных устройствах и разрешениях.
- Соблюдайте гармонию между шрифтами: не более двух-трех семейств на одной странице.
- Используйте разные веса и начертания одного шрифта, чтобы создавать визуальную иерархию без лишних подключений.
- Проверяйте отображение на мобильных устройствах, чтобы заголовки и текст не сливались по размерам и стилю.
Установка резервных шрифтов для надежного отображения
Резервные шрифты обеспечивают корректное отображение текста, если основной шрифт не загрузился. В CSS они указываются через font-family после основного, через запятую. Браузер выбирает первый доступный шрифт.
Пример:
body {
font-family: 'Open Sans', 'Arial', sans-serif;
}
Рекомендации по созданию резервных списков:
- Всегда включайте системный шрифт последним, например sans-serif или serif.
- Для заголовков используйте резервные шрифты с похожей шириной и высотой, чтобы сохранить дизайн.
- Подбирайте резервные шрифты с аналогичными засечками или стилем, чтобы избежать визуального диссонанса.
- Для веб-шрифтов Google Fonts рекомендуется добавлять стандартные аналоги системы в конец списка.
- Проверяйте, как текст выглядит с резервными шрифтами на разных устройствах и браузерах, чтобы избежать сдвигов и переноса строк.
Комбинирование шрифтов с различными стилями и весами

Использование одного шрифта в нескольких весах и стилях позволяет создавать визуальную иерархию без подключения лишних файлов. В CSS это настраивается через свойства font-weight и font-style.
Пример для основного текста и заголовков:
h1, h2 {
font-family: 'Lato', sans-serif;
font-weight: 700; /* полужирный */
}
p {
font-family: 'Lato', sans-serif;
font-weight: 400; /* обычный */
font-style: normal;
}
em {
font-family: 'Lato', sans-serif;
font-weight: 400;
font-style: italic; /* курсив */
}
Рекомендации:
- Подключайте только нужные веса шрифта через @font-face или Google Fonts, чтобы не увеличивать время загрузки.
- Используйте сочетание нормального, полужирного и курсивного начертания для выделения текста без добавления новых шрифтов.
- Проверяйте читаемость разных комбинаций на мобильных устройствах и экранах с низким разрешением.
- Для заголовков допускается более жирное начертание, а для списков и абзацев – обычное, чтобы сохранить баланс и удобство чтения.
- Используйте единый шрифт для всех весов, чтобы дизайн оставался целостным и избежать несовпадений в интервалах между символами.
Проверка корректного отображения шрифтов на сайте
После подключения нескольких шрифтов важно убедиться, что они отображаются правильно на всех целевых устройствах и браузерах. Основные аспекты проверки включают загрузку, соответствие начертаний и совместимость с резервными шрифтами.
Для систематической проверки можно использовать таблицу тестов:
| Браузер/Устройство | Основной шрифт заголовков | Основной шрифт текста | Резервные шрифты | Вес и стиль | Проблемы отображения |
|---|---|---|---|---|---|
| Chrome Desktop | Roboto Bold | Roboto Regular | Arial, sans-serif | 400/700, normal/italic | Нет |
| Firefox Mobile | Roboto Bold | Roboto Regular | Arial, sans-serif | 400/700, normal/italic | Нет |
| Safari iOS | Roboto Bold | Roboto Regular | Arial, sans-serif | 400/700, normal/italic | Иногда задержка загрузки |
| Edge Desktop | Roboto Bold | Roboto Regular | Arial, sans-serif | 400/700, normal/italic | Нет |
Рекомендации для проверки:
- Проверяйте загрузку шрифтов через инструменты разработчика в каждом браузере.
- Сравнивайте визуальное отображение заголовков и текста с макетом.
- Проверяйте работу резервных шрифтов, отключая основной в CSS временно.
- Тестируйте разные начертания и веса для соответствия стилевому дизайну.
- Обратите внимание на задержку загрузки шрифтов и используйте font-display: swap для сохранения читаемости.
Вопрос-ответ:
Какие форматы шрифтов стоит подключать для разных браузеров?
Для современных браузеров рекомендуется использовать WOFF2 из-за высокого сжатия и быстрой загрузки. Для старых версий Chrome, Firefox и Edge подключайте WOFF. TTF и OTF подходят для очень старых систем, а SVG применяется на устаревших версиях iOS. Подключение нескольких форматов через @font-face обеспечивает корректное отображение текста на всех платформах.
Как правильно подключить Google Fonts к сайту через CSS?
Google Fonts можно подключать через тег <link> в секции <head> или через директиву @import в CSS. Например:
<link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap" rel="stylesheet">
После подключения шрифт используется через font-family. Рекомендуется подключать только нужные веса и начертания, а для предотвращения пустого текста использовать параметр display=swap.
Как сочетать разные шрифты для заголовков и основного текста?
Заголовки обычно используют шрифты с более ярким стилем или полужирным весом, чтобы выделяться на странице, а основной текст — легко читаемый без засечек. В CSS это настраивается через font-family и font-weight. Например:
h1, h2 { font-family: 'Montserrat', sans-serif; font-weight: 700; } p { font-family: 'Roboto', sans-serif; font-weight: 400; }
Следует проверять совместимость размеров и пропорций, чтобы текст оставался читабельным на всех устройствах.
Почему важно указывать резервные шрифты и как это сделать?
Резервные шрифты подставляются, если основной шрифт не загрузился, что предотвращает искажение текста и сдвиги макета. В CSS они указываются через font-family через запятую после основного. Например:
body { font-family: 'Open Sans', 'Arial', sans-serif; }
Рекомендуется выбирать резервные шрифты с аналогичной шириной и стилем, а последним всегда ставить системный шрифт, чтобы текст оставался читаемым.
