Неудобное отображение шрифтов в Chrome

Мои замечательные шрифты работают в Chrome (версия 51.0.2704.103), но не работают в Safari (версия 9.1).

При доступе к моему приложению в Chrome я получаю эту ошибку, и значки отображаются неправильно

Font from origin 'http://[::1]' has been blocked from loading by Cross-  
Origin Resource Sharing policy: No 'Access-Control-Allow-Origin' header  
is present on the requested resource. Origin 'http://localhost' is 
therefore not allowed access.

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

Я не вмешивался в код font-awesome, и версия, которую я установил с npm, - 4.6.3.

Я искал в Интернете, и люди упоминали вещи об изменении в .htaccess файл, изменяя пути шрифта в font-awesome.css файл, отключение рекламного блока и попытки обойти политику того же происхождения. Тем не менее, это не похоже на работу для меня. Меня удивляет то, что в Safari все работает правильно, но в Chrome происходит сбой? Любое понимание этого было бы полезно.

2 ответа

Попробуйте либо 2 вещи:

1. использовать этот CDN:

<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet"/>

2.download font-awesome.css на ваш локальный, а затем связать его оттуда, что-то вроде этого:

<link href="/my-fonts/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet"/>

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

Access-Control-Allow-Origin: *

Ссылка

https://davidwalsh.name/cdn-fonts

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