Chrome предпочитает веб-шрифт перед локальным - PullRequest
0 голосов
/ 25 июня 2018

Я не понимаю, как Chrome загружает шрифты Google. Вот мой HTML:

<html>
<head>
    <title>Montserrat Regular Google Fonts</title>
    <link href="https://fonts.googleapis.com/css?family=Montserrat" rel="stylesheet">
</head>
<body>
    <p style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 30px;">
        "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt..."
    </p>        
</body>

На моем компьютере с Windows 10 установлен Montserrat Regular. В соответствии с этим: https://fonts.googleapis.com/css?family=Montserrat, локально установленные шрифты имеют приоритет.

Но когда я проверяю Dev Tools, Chrome сообщает в разделе «Рендеринг шрифтов» - Montserrat (сетевой ресурс -93 символа)

Я проверял это на Firefox (отчеты "Montserrat Regular - System") и Edge (отчеты "Montserrat Regular использовал Montserrat (Local, System, 95 символов).

Почему Chrome предпочитает сетевой ресурс локально установленному шрифту?

1 Ответ

0 голосов
/ 19 сентября 2018

Похоже, что это связано с этой открытой проблемой хрома .

Linking "http://fonts.googleapis.com/css?family=Special+Elite"

Возвращает этот CSS:

/* latin */
@font-face {
  font-family: 'Special Elite';
  font-style: normal;
  font-weight: 400;
  src: local('Special Elite Regular'), local('SpecialElite-Regular'), url(http://fonts.gstatic.com/s/specialelite/v8/9-wW4zu3WNoD5Fjka35JmzxObtw73-qQgbr7Be51v5c.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2212, U+2215;
}

src правильно ссылается на имя лица шрифта. Chrome не находит локально установленный шрифти возвращается к использованию веб-шрифта. Firefox находит локально установленный шрифт.

Если вы измените CSS для ссылки на локальный («Special Elite») (то есть имя семейства шрифтов), то поведение будет обратным: Chrome находит локальный шрифт, а Firefox - нет.

...