Веб-шрифты Google не работают на веб-сервере - PullRequest
0 голосов
/ 21 июня 2011
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans'), local('OpenSans'), url('cJZKeOuBrn4kERxqtaUH3bO3LdcAZYWl9Si6vvxL-qU.woff') format('woff');
}

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: local('Open Sans Light'), local('OpenSans-Light'), url('DXI1ORHCpsQm3Vp6mXoaTaRDOzjiPcYnFooOUGCOsRk.woff') format('woff');
}

Я скачал шрифты с URL-адреса, предоставленного Google CSS, чтобы я мог использовать его, не будучи в сети. Код работает, если щелкнуть файл .html и открыть его в браузере. Однако, когда я размещаю все свои файлы на локальном веб-сервере, это не работает.

Есть идеи? Имейте в виду, я не буду подключен к Интернету.

Ответы [ 3 ]

3 голосов
/ 29 июля 2011

Адам, могут быть разные причины такого поведения, как @Kyle предложил

Сначала я бы проверил URL-адрес, чтобы файл шрифтов разрешался правильно. Из вашего объявления CSS выше кажется, что браузер будет ожидать, что файл будет находиться в том же каталоге, где существует CSS

Второй и да, Google может заблокировал пиявку / загрузку файлов. Единственный способ проверить это - сначала использовать шрифт, который будет загружен из службы Google «Обратите внимание на размер файла», затем загрузите и проверьте размер. Если они одинаковые, они разрешают скачивать

Третьи веб-шрифты должны быть специфичными для браузера, вот объяснение от самих себя

Когда браузер отправляет запрос на таблицу стилей Font API (как указано в теге на вашей веб-странице), Font API обслуживает таблицу стилей генерируется для конкретного пользовательского агента, выполняющего запрос.

поэтому каждый раз, когда ваш браузер запрашивает шрифт, вы фактически загружаете небольшой фрагмент CSS, а затем семейство Font из каталога

0 голосов
/ 02 августа 2012

На моем сервере Windows 7 IIS мне пришлось добавить woff в типы mime, чтобы заставить их работать.

0 голосов
/ 29 июля 2011

Странно, если шрифт отлично работает на компьютере, открыв html-файл, но не с помощью localhost. Вы уверены, что копируете все файлы шрифтов и помещаете их в один каталог? Поскольку имя файла настолько сложное и длинное, может быть, вы ошибаетесь с именами? Вы используете тот же браузер?

И нет, ничего подобного гугл не позволяет скачивать файлы. Просто чтобы убедиться, что я скачал шрифт (GloriaHallelujah) из шрифтов Google и протестировал следующий код.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
    <title>Google font test</title>
    <style type="text/css" media="screen">
    @font-face {
        font-family: GloriaHallelujah;
        src: url('GloriaHallelujah.ttf');
        }   
    h1 { font-family: GloriaHallelujah, helvetica, arial; }     
    </style>
</head>
<body>
     <h1> Hello World </h1>
</body>
</html> 

Это прекрасно работает как на рабочем столе, так и на локальном хосте. Может быть, вы можете скачать тот же шрифт из здесь , поместить в тот же каталог, а затем протестировать на своем локальном хосте и посмотреть.

...