Текст возвращается с пользовательского на веб-безопасный шрифт при перезагрузке (переопределить кеш)

Я изменил свой шрифт на Arial, но установил для шрифтов заголовков собственный шрифт. Я помещаю свои шрифты в папку с именем MYFONT, которая находится в папке с именем fonts, которая находится в моем корневом каталоге. (корневой каталог -> шрифты -> MYFONT -> файлы шрифтов) Вот мой код:

CSS
body {
    font-family: 'Arial', sans-serif;
}

@font-face {
    font-family: 'MYFONT';
    font-style: normal;
    font-weight: 600;
    font-display: optional;
    src: url(fonts/MYFONT/MYFONT.woff2) format('woff2'),
         url(fonts/MYFONT/MYFONT.woff) format('woff'),
         url(fonts/MYFONT/MYFONT.svg) format('svg'),
         url(fonts/MYFONT/MYFONT.eot) format('eot');
    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+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


h1, h2, h3 {
    font-family: 'MYFONT', sans-serif;
}
HTML
<h1>MYFONT</h1>
<h2>MYFONT</h2>
<h3>MYFONT</h4>
<p>ARIAL</p>

Когда я впервые открываю страницу на новом устройстве или когда нажимаю Cmd + Shift + R (перезагрузка страницы без кеша браузера), вся страница отображается в формате Arial. В чем может быть проблема? Я хочу, чтобы <h1>, <h2>, and <h3> использовал шрифт MYFONT.

**Обновлено: Я попытался удалить часть "sans-serif" в

h1, h2, h3 {
    font-family: 'MYFONT', sans-serif;
}

и при первой загрузке/загрузке без кеша шрифт превратился в шрифт с засечками по умолчанию.**

Вы можете использовать !important в тегах h1,h2,h3

Arpit Jain 08.04.2019 14:36

Что произойдет, если вы просто добавите font-style: normal; к определению h1, h2, h3?

Parapluie 08.04.2019 14:37

что ты имеешь в виду

Duncan Leung 08.04.2019 15:07

@DuncanLeung Прямо сейчас у вас есть h1, h2, h3 {font-family: 'MYFONT', sans-serif;}. Вы пытались указать css всегда выбирать нормальный вес шрифта, как в моем комментарии выше? В качестве альтернативы вы можете настроить jsfiddle с абсолютной ссылкой на шрифт (например, API шрифтов Google). Таким образом, мы можем безопасно торговаться с вашим кодом.

Parapluie 08.04.2019 17:09

удалите эти источники svg и eot (svg не был допустимым форматом в течение многих лет, а eot стал мертвым форматом, когда MS убила IE8 более 3 лет назад).

Mike 'Pomax' Kamermans 08.04.2019 23:27
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
2
5
110
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Если вы укажете правило @font-face с определенным весом, то ваш шрифт будет работать только в в этом весе. Поэтому либо удалите font-weigth: 600 из объявления начертания шрифта, либо добавьте font-weight: 600 в правило h1,h2,h3. @font-face предназначен для загрузки определенных ресурсов шрифта для определенных комбинаций семейства/стиля/жирности, и чем конкретнее объявление шрифта, тем более конкретным должен быть ваш обычный CSS, чтобы правило шрифта также срабатывало.

моя проблема не в весе шрифта, а в самом шрифте.

Duncan Leung 09.04.2019 02:01

Круто: все равно возьми это на вооружение. Если вы подозреваете, что это шрифт, очевидный способ действий — сначала получить свежую копию шрифта из источника, который, как вы знаете, является хорошим (и не забудьте включить format("woff")/format("woff2") для ваших двух источников — добавьте только woff/woff2, больше ничего не добавляйте (нет svg, eot, ttf или otf).

Mike 'Pomax' Kamermans 09.04.2019 05:23

@DuncanLeung Этот вопрос кажется хорошим уроком по устранению неполадок в коде. Обратите внимание, что здесь произошло следующее: 1. A/B-тест на font-style (нет), 2. A/B-тест на font-weight (нет), 3. A/B-тест на font-display (Бинго! Проблема решена.) Красиво и аккуратно!

Parapluie 11.04.2019 19:31
Ответ принят как подходящий

Я наконец-то решил это, видимо, это была проблема font-display: optional;, я изменил его на font-display: swap;, и теперь он работает.

Другие вопросы по теме