Дополнительными ресурсами считается все то, что не попадает ни под одну из предыдущих категорий файлов. Это могут быть различные favicon, шрифты, аудио, видео, документы и прочее.
Подобные файлы следует хранить в папке src/resources
.
ninelines-template
└── src
└── resources
└── ...
Задача copy
копирует содержимое папки src/resources
в build
:
gulp copy
Подключить шрифт можно двумя способами:
- CDN (Google Fonts)
- Конвертировать и подключить с помощью
@font-face
.
Если шрифт и его требуемая языковая версия имеются в Google Fonts, то данный вариант подключения является приоритетным.
Порядок подключения шрифта на примере Roboto:
- Находим шрифт — Roboto
- Нажимаем
Select this font
. - Открываем появившееся снизу экрана окно.
- Во вкладке
Customize
выбираем нужное начертание и языковую версию. - Во вкладке
Embed
переключаемся в@import
и копируем содержимое тега<style>
. - В файл
src/scss/_fonts.scss
вставляем скопированный@import
. - В файл
src/scss/_variables.scss
добавляем переменную$font-family-roboto
. - Используем переменную в стилях.
Если шрифт отсутствует в Google Fonts, или нет подходящей языковой версии (отсутствует кириллица), то необходимо получить файл шрифта.
Требуемые форматы — .woff
(обязательно) и .woff2
(опционально).
Файлы .ttf
, .otf
или .eot
можно сконвертировать в .woff
и .woff2
с помощью онлайн сервисов:
Полученные файлы следует хранить в папке src/resources/fonts
:
ninelines-template
└── src
└── resources
└── fonts
└── ...
Подключение шрифтов происходит в файле src/scss/_fonts.scss
:
@font-face {
src: url("../fonts/my-font-regular.woff2") format("woff2"), url("../fonts/my-font-regular.woff") format("woff");
font-family: "My Font";
font-weight: 400;
font-style: normal;
}
При наличии множества начертаний шрифты следует подключать в следующем порядке:
- 100 normal (thin)
- 100 italic (thin italic)
- 200 normal (extra light)
- 200 italic (extra light italic)
- 300 normal (light)
- 300 italic (light italic)
- 400 normal (regular)
- 400 italic (regular italic)
- 500 normal (medium)
- 500 italic (medium italic)
- 600 normal (semi bold)
- 600 italic (semi bold italic)
- 700 normal (bold)
- 700 italic (bold italic)
- 800 normal (extra bold)
- 800 italic (extra bold italic)
- 900 normal (heavy)
- 900 italic (heavy italic)
Пример:
@font-face {
src: url("../fonts/my-font-light.woff") format("woff");
font-family: "My Font";
font-weight: 300;
font-style: normal;
}
@font-face {
src: url("../fonts/my-font-light-italic.woff") format("woff");
font-family: "My Font";
font-weight: 300;
font-style: italic;
}
@font-face {
src: url("../fonts/my-font-regular.woff") format("woff");
font-family: "My Font";
font-weight: 400;
font-style: normal;
}
@font-face {
src: url("../fonts/my-font-regular-italic.woff") format("woff");
font-family: "My Font";
font-weight: 400;
font-style: italic;
}
@font-face {
src: url("../fonts/my-font-bold.woff") format("woff");
font-family: "My Font";
font-weight: 700;
font-style: normal;
}
@font-face {
src: url("../fonts/my-font-bold-italic.woff") format("woff");
font-family: "My Font";
font-weight: 700;
font-style: italic;
}
После подключения шрифта в файл src/scss/_variables.scss
следует добавить переменную в формате $font-family-[name]
.
Пример:
$font-family-my-font: "My Font", sans-serif;
Затем переменную можно использовать в любом SCSS-файле:
body {
font-family: $font-family-my-font;
}