2015-09-24 3 views
0

Я пытаюсь загрузить локальные шрифты с пользовательскими именами. Все работает отлично во всех браузерах, кроме IE, как всегда. Шрифт не отображается в bold или italic. Кажется, я не понимаю, что я здесь делаю неправильно.Пользовательские шрифты, не выделенные жирным или курсивом в IE

Вот демо: http://jsfiddle.net/maitreyjukar/5ga5k2oa/

Я загружая шрифт, используя следующий CSS

@font-face { 
    font-family: k_Arial; 
    src: local("Arial"), 
     local("Helvetica"), 
     local("sans-serif"); 
    font-weight: normal; 
    font-style: normal; 
} 

для всех комбинаций начертание шрифта и стиля шрифта.

+0

надеюсь, что вы не пропустите файлы формата '.eot' в папке шрифтов, что особенно необходимо для IE. –

ответ

0

Это не IE-конкретный вопрос - я на Firefox 38 и она не работает здесь либо ...

local sources обычно используется для поиска на компьютере пользователя, прежде чем указывать на URL, в чтобы ускорить процесс.

Однако вы, похоже, хотите использовать только локально установленные шрифты с определенным резервным заказом. Для достижения этой цели, вы можете просто сделать следующее:

body { 
    font-family: Arial, Helvetica, sans-serif; 
} 
.bold { 
    font-weight: bold; 
} 
.italic { 
    font-style: italic; 
} 

Дополнительный совет: Объединить bold и italic классы и вам не нужен дополнительный класс bolditalic.

JS-Fiddle

+0

Да, согласился, что я должен использовать локальные шрифты простым способом. Единственная причина, по которой это делается, - это следовать протоколу для всех шрифтов, используемых в проекте. Спасибо за быстрый ответ. – mjzeus

1

Это не только не IE-конкретный вопрос он не работает в других браузерах, таких как Firefox. Просто написать один шрифт-лица Правило istead из четырех, как это:

@font-face { 
font-family: k_Arial; 
src: local("Arial"), 
    local("Helvetica"), 
    local("sans-serif"); 
} 

Вот мое решение: http://jsfiddle.net/deepak__yadav/1eed9na5 я надеюсь, вы поймете, что вы сделали неправильно.

+0

Я не думаю, что это было бы правильно. Всякий раз, когда мы используем собственный шрифт, мы должны сообщать браузеру, как он должен выглядеть, когда он выделен полужирным шрифтом или курсивом. Если мы этого не сделаем, сам браузер попытается подделать эти стили. Вы можете увидеть разницу между отображаемыми символами шрифта здесь [link] (http://jsfiddle.net/maitreyjukar/5ga5k2oa/1/) – mjzeus

0

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

@font-face { 
     font-family: 'ProximaNovaRegular'; 
     src: url('../fonts/ProximaNovaRegular.eot'); 
     src: url('../fonts/ProximaNovaRegular.eot') format('embedded-opentype'), 
      url('../fonts/ProximaNovaRegular.woff2') format('woff2'), 
      url('../fonts/ProximaNovaRegular.woff') format('woff'), 
      url('../fonts/ProximaNovaRegular.ttf') format('truetype'), 
      url('../fonts/ProximaNovaRegular.svg#ProximaNovaRegular') format('svg'); 
    } 
Смежные вопросы