Как включить шрифт .ttf с помощью CSS?


120

У меня проблема с моим кодом. Потому что я хочу включить глобальный шрифт для своей страницы и скачал файл .ttf. И я включаю его в свой основной CSS, но мой шрифт не меняется.

Вот мой простой код:

@font-face {
    font-family: 'oswald';
    src: url('/font/oswald.regular.ttf');
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    font-size:100%;
    font:inherit;
    font-family: oswald;
    vertical-align:baseline
} 

Я не знаю, где я ошибся. ты можешь помочь мне с этим? Спасибо.


1
Можете ли вы проверить вкладку «Сеть» в консоли браузера, чтобы убедиться, что шрифт загружен правильно?
rink.attendant.6

Get woff from here
Mr. Alien

1
Вы уверены, что правильно написали имя файла шрифта? Не должно быть oswald.regular.ttf?

1
Да, я дважды проверил название своего шрифта
Jerielle

5
@Jerielle Итак, у вас есть шрифт TTF с расширением tff? Вы действительно в этом уверены?

Ответы:


174

Только предоставление файла .ttf для webfont не будет достаточно для кроссбраузерной поддержки. Наилучшая возможная комбинация в настоящее время - это использование комбинации как:

@font-face {
  font-family: 'MyWebFont';
  src: url('webfont.eot'); /* IE9 Compat Modes */
  src: url('webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('webfont.woff') format('woff'), /* Modern Browsers */
       url('webfont.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('webfont.svg#svgFontName') format('svg'); /* Legacy iOS */
}

Этот код предполагает, что у вас есть форматы .eot, .woff, .ttf и svg для вашего веб-шрифта. Чтобы автоматизировать весь этот процесс, вы можете использовать: Transfonter.org .

Кроме того, современные браузеры переходят на шрифт .woff, поэтому вы, вероятно, тоже можете это сделать:

@font-face {
  font-family: 'MyWebFont';
  src: url('myfont.woff') format('woff'), /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
   url('myfont.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5, Opera 10+, Safari 3—5 */
}  

Подробнее здесь: http://css-tricks.com/snippets/css/using-font-face/


Ищите поддержку браузера: Могу ли я использовать шрифт?


и если вы используете GFonts, посмотрите stackoverflow.com/a/30585464/1727470
Samy Bencherif

1
Для тех, кто, как я, легко путается - пути url('path/to/font.woff')
обозначаются

У меня возникла проблема с комментариями в правиле шрифта. Перенос комментариев в конец правила устранил проблему.
Eric D'Souza

Я обнаружил, что шрифт, для которого я хотел создать веб-шрифт, был внесен в черный список от Font Squirrel. Однако у меня transfonter.org работал.
HotN

У меня тоже были проблемы с Font Squirrel. успех с font-converter.net
Питер Хейман


14

Вы можете использовать начертание шрифта следующим образом:

@font-face {
  font-family:"Name-Of-Font";
  src: url("yourfont.ttf") format("truetype");
}

3

Я знаю, что это старый пост, но это решило мою проблему.

@font-face{
  font-family: "Font Name";
  src: url("../fonts/font-name.ttf") format("truetype");
}

обратите внимание, src:url("../fonts/font-name.ttf");мы используем две точки, чтобы вернуться в корневой каталог, а затем в папку со шрифтами или в другое место, где находится ваш файл.

надеюсь, что это поможет кому-то в будущем :) счастливого кодирования

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.