Поскольку ваш пример взят из Значки материалов , я отвечу на ваш вопрос в этой области.
На высоком уровне браузер отображает первый пример?
Давайте начнем с начала:
<i class="material-icons">
share
</i>
Здесь они используют элемент <i>
для i cons ( не хорошая идея).Класс CSS также установлен, material-icons
.Значки материалов разработаны в этой ссылке CSS :
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
Давайте посмотрим, как устроен этот класс материала-значка :
.material-icons {
font-family: 'Material Icons'; /* [...] */
}
«Значки материалов» - это пользовательский шрифт , описанный на том же ресурсе:
@font-face {
font-family: 'Material Icons';
/* [...] */
src: url(https://fonts.gstatic.com/s/materialicons/v46/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2) format('woff2');
}
Таким образом, в итоге вы получите текст "share"
, отображаемый пользовательским шрифтом, иэто ключ этой функции. Это не символ Unicode и не «реальный» значок (SVG или растровое изображение), а весь текст, отображаемый с специфическим шрифтом до , который отображается как значок .
Например, в приведенном ниже фрагменте кода попытайтесь выбрать «часть» значка общего доступа, и вы поймете, что на самом деле это слово «общий», нарисованный символ на символ.Скопируйте и вставьте его в другое место, чтобы увидеть его.Например, левая точка обозначает h
.
@font-face {
font-family: 'Material Icons';
src: url(https://fonts.gstatic.com/s/materialicons/v46/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2) format('woff2');
}
.material-icons {
font-family: 'Material Icons';
font-size:24px;
}
<i class="material-icons">
share
</i>