@romaro

Почему могут не подгружаться шрифты?

У меня в CSS:
@font-face {
  font-family: "Overpass Mono", monospace;
  src: url(fonts/637c2fa6a13ffa8d18f0.woff2) format("woff2"), url(fonts/ba947e367d9bfe844d5d.woff) format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: block;
}

.p-main ._slogan span {
  color: #9747ff;
  font-family: "Overpass Mono", monospace;
  font-weight: 500;
  font-style: normal;
  font-size: 70px;
}


На одних устройствах шрифт подгружается, на других вместо Overpass Mono отображается дефолтный monospace.

Шрифты лежат в директории /fonts и я проверил (через логи Nginx), что браузер даже не пробует обратиться к этой директории, чтобы загрузить шрифт а сразу устанавливает дефолт.

Как диагностировать проблему?
  • Вопрос задан
  • 154 просмотра
Решения вопроса 1
@romaro Автор вопроса
Причина все-таки в некорректном объявлении @font-face. Вместо:
font-family: "Overpass Mono", monospace;

Нужно указать одно семейство:
font-family: "Overpass Mono";

Я не знаю, является ли мой вариант синтаксически корректным, но, видимо, он обрабатывается браузером в пользу уже имеющегося на компьютере пользователя шрифта.

P.S. Мой вариант без ведущего слеша (так генерирует вебпак по умолчанию), работает исправно.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@wadowad
В путях слэша не хватает:
src: url(/fonts/637c2fa6a13ffa8d18f0.woff2) format("woff2"), url(/fonts/ba947e367d9bfe844d5d.woff) format("woff");


Подробнее https://developer.mozilla.org/ru/docs/Web/CSS/url
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы