Copy Unicode
@font-face {
font-family: 'Font Awesome\ 5 Free';
font-style: normal;
font-weight: 900;
src: url(https://use.fontawesome.com/releases/v5.0.11//webfonts/fa-solid-900.eot);
src: url(https://use.fontawesome.com/releases/v5.0.11//webfonts/fa-solid-900.eot?#iefix) format('embedded-opentype'),
url(https://use.fontawesome.com/releases/v5.0.11//webfonts/fa-solid-900.woff2) format('woff2'),
url(https://use.fontawesome.com/releases/v5.0.11//webfonts/fa-solid-900.woff) format('woff'),
url(https://use.fontawesome.com/releases/v5.0.11//webfonts/fa-solid-900.ttf) format('truetype'),
url(https://use.fontawesome.com/releases/v5.0.11//webfonts/fa-solid-900.svg#fontawesome) format('svg');
}
Список иконок: fontawesome.com@font-face {
font-family: FontAwesome;
font-style: normal;
font-weight: 900;
src: url(https://use.fontawesome.com/releases/v5.15.3/webfonts/fa-solid-900.eot);
src: url(https://use.fontawesome.com/releases/v5.15.3/webfonts/fa-solid-900.eot?#iefix) format('embedded-opentype'),
url(https://use.fontawesome.com/releases/v5.15.3/webfonts/fa-solid-900.woff2) format('woff2'),
url(https://use.fontawesome.com/releases/v5.15.3/webfonts/fa-solid-900.woff) format('woff'),
url(https://use.fontawesome.com/releases/v5.15.3/webfonts/fa-solid-900.ttf) format('truetype'),
url(https://use.fontawesome.com/releases/v5.15.3/webfonts/fa-solid-900.svg#fontawesome) format('svg');
}
.fa-icon {
font-family: FontAwesome;
}
.fa-icon[data-icon="cog"]::before {
content: ''; /* Copy Glyph */
content: '\f013'; /* Обратный слеш + Copy Unicode */
}
[div=fa-icon data-icon=cog][/div]
Список иконок: fontawesome.com
@EngiNier, про подключение шрифтов на примере Font Awesome:Так как на официальном сайте теперь нет нормальной инструкции под подключению, то пишем свою, под все иконочные шрифты.
Подключение иконочного шрифта ничем не отличается от обычного шрифта, надо найти место где хранятся эти самые шрифты в интернете в свободном доступе и доступные по защищенному подключению.
Подключение шрифта
К счастью, этим шрифтом пользуются в Bootstrap, а у них в свою очередь есть CDN. По ссылке нам предлагают скопировать CSS файл, но нам это не доступно, поэтому лезем внутрь файла и копируем оттуда настройки подключения шрифта. Если весь код похож на кашу, читать невозможно, обычно можно просто убрать .min из ссылки: https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.css. Ссылки на шрифты относительны, поэтому их надо привести в порядок:превращаем в это:
, а так как Шики все подряд через camo пропускает, то преобразуем дальше в это:
(благо, CDN доступна по https, если нет, то ищите нормальный хостинг, CDN или убирайте с конца ссылки всю ерунду, типа такого:
?v=4.7.0
)Настройки шрифта
Когда весь шрифт подключен, надо разобраться с настройками шрифта. Обычно такие правила идут сразу за подключением шрифта и содержат в себе такое свойство:font-family: 'ТутНазваниеШрифта';
. Копируем это правило, а селектор от него мы будем менять на что-то своё, к примеру, на это:Обычно используется всего одно правило, где указывается общие настройки шрифта для всех иконок на сайте, но шики у нас надмозг, поэтому селекторов в этом наборе правил будет кхм.. много.
Настройки иконок
Далее сами иконки. Они обычно обозначаются буквой (как на шики), словом (как в Material Icons) или символами юникода. И тут нас поджидает новая кхм.. подлянка. В CSS шики обрубает не только@import
,script
, но и обратный слеш:\
. Слеш и символ за ним игнорируются, как-будто у нас тут регулярки какие-то. Я уверен, что есть способ обойти это, но я не нашел ничего умнее, чем это:, где
f0ad
– символ юникода иконки, который можно найти на странице иконок шрифта, под самой иконкой: http://fontawesome.io/icon/wrench/Итоговый код с примером
В конечном итоге у нас должно получится следующее: правила подключения шрифта, правила с настройками шрифта и отдельные правила с указанием где какая иконка будет отображаться. Также не забываем о лицензировании и правилах приличия: копируем комментарий с авторами и условиями лицензии к себе в стиль:P.S. Лучшей альтернативой всем этим шрифтам является SVG, так что если размер кода не очень смущает, то, думаю, стоит использовать именно SVG.
@EngiNier,@grin3671,@grin3671