Вы наверняка видели это сами: страница открывается, текст появляется стандартным системным шрифтом, а через долю секунды «перемигивает» в нужный. В этот момент кнопки могут сместиться, а текст — дернуться. Это называется CLS (Cumulative Layout Shift) или сдвиг макета. Это портит пользовательский опыт и снижает оценки в Core Web Vitals, что плохо влияет на SEO вашего сайта.
В Next.js (начиная с 13-й версии и App Router) проблему решили — через встроенный пакет next/font.
Почему next/font лучше обычного CSS?
В отличие от классического способа, Next.js не заставляет браузер пользователя отправлять внешние запросы на сервера Google каждый раз при открытии страницы.
Фреймворк делает всё сам:
- Во время сборки (build time) он скачивает нужный файл шрифта.
- Создает оптимизированный CSS.
- Размещает шрифт на том же сервере, где лежит ваш сайт (Self-hosting).
Результат: никаких внешних запросов, полная приватность и, главное, шрифт загружается мгновенно вместе с HTML. Текст стоит как влитой с первой миллисекунды.
