Опера не рендерит определенные символы из веб-шрифтов - PullRequest
0 голосов
/ 19 марта 2012

Может быть, это не так. Но потерпи меня. Я использую Google Web Fonts и включаю шрифт PT Sans следующим образом:

<link href="https://fonts.googleapis.com/css?family=PT+Sans:regular,italic,bold,bolditalic" rel="stylesheet" type="text/css">

и у меня даже .htaccess установлен так:

<IfModule mod_headers.c>
  <FilesMatch "\.woff$">
    Header set Content-Type "application/octet-stream"
  </FilesMatch>

  <FilesMatch "\.ttf$">
    Header set Content-Type application/octet-stream
  </FilesMatch>
</IfModule>

Теперь шрифт PT Sans не включает символы Baltic (Balticčęėįšųūž), которые я использую. Но Chrome, Firefox, IE отрисовывают их все отлично - даже без использования другого шрифта. Опера просто пропускает их и оставляет пустое место.

Просто понял, что делает это только жирным шрифтом. Проверьте этот пример:

<!doctype html>
<html lang="en" class="no-js">
  <head>
    <title>Font test</title>
    <meta charset="UTF-8">
    <link href="https://fonts.googleapis.com/css?family=PT+Sans:regular,italic,bold,bolditalic" rel="stylesheet" type="text/css">
  </head>

  <body style="font-family:'PT Sans';">
    aceeisuuz<br />
    ąčęėįšųūž
    <p style="font-weight:bold">ąčęėįšųūž</p>
  </body>
</html>

Теперь, как мне это исправить?

Ответы [ 3 ]

0 голосов
/ 19 марта 2012

Поскольку шрифт PT Sans не содержит символов Baltic, браузеры будут использовать некоторые резервные шрифты.При отсутствии объявлений для этого в таблице стилей страницы они будут использовать свои методы по умолчанию, поэтому следует ожидать отличий браузера.

Неясно, почему иногда здесь происходит сбой Opera, но более важнообеспечить некоторый запланированный запасной вариант.Либо выберите совершенно другой шрифт, либо, по крайней мере, укажите несколько альтернативных шрифтов в списке шрифтов, например, font-family: 'PT Sans', Arial, sans-serif.Это предотвращает странные сочетания, такие как PT Sans и Times New Roman (общий шрифт по умолчанию), и может также обойти ошибку Opera.

0 голосов
/ 21 ноября 2012

Я столкнулся с той же проблемой.

решение было:

  1. Страница веб-шрифтов Google |Выбери свой шрифт Cirilic |Быстрое использование |Проверьте свои настройки ... -> добавить набор Cyrilic в выделение.

  2. Очистить кэш Opera;

0 голосов
/ 19 марта 2012

Выглядит хорошо, я просто бросил ваш пример кода в jsfiddle.Может быть, что-то еще происходит с вашей CSS / страницей?

http://jsfiddle.net/MetalFrog/gHhGv/

screenshot of jsfiddle

...