#html #css #fonts #webfonts
#HTML #css #шрифты #веб-шрифты
Вопрос:
Обычно я вижу, как люди делают что-то вроде этого:
font-family: -apple-system, ...., Tahoma, ..., or whatever other system font
Теперь, если мы добавим шрифт из Google Fonts или где-либо еще, мы получим большой
@font-face {
font-family: name;
src: url() or local(NameWeight-Type), local(Name Weight Type), ......
font-style: style corresponding to "-Type"
font-weight: weight corresponding to named Weight of font
}
включение со всеми выбранными через платформу для встраивания или получение встраивания по запросу от самой платформы.
С локальными шрифтами это все еще необходимо? Значение, если я сделаю:
font-family: local font 1, local font 2, ....;
как указано выше в стереотипном «системном стеке шрифтов» с множеством весов шрифтов, стилей и т. Д. По всему сайту, Мне все еще нужно явно определять или браузер просто использует font-synthesis
их для создания?
Я не понимаю, как он ссылается на соответствующие файлы без этого. Кроме того, как system-ui
, system
, ui-sans-serif
, ui-serif
, …. детерминирован таким образом?
Комментарии:
1.
system-ui
просто спросите «систему», какой шрифт используется «пользовательским интерфейсом», и заполните этот шрифт. Аналогичное поведение дляui-
общих имен шрифтов с префиксами. Итак, это так же детерминировано, как и системная ОС.2. @HereticMonkey Да, я в курсе этого…. Я спрашивал больше в соответствии с ответом Роберта Каробинса. Детерминированный в смысле сопоставления вариантов шрифтов, а не того, какое (общее) семейство шрифтов заполняется, поскольку всегда есть детерминированный системный шрифт для заполнения. Но, учитывая это, я думаю, имеет смысл, что браузер также может обрабатывать сопоставления с соответствующими шрифтами и стилями, поскольку на них ссылаются в других стилях.
Ответ №1:
Если вы используете локальный шрифт, то нет необходимости включать дополнительные веса / стили, если они обычно привязаны к базовому шрифту. Если другие приложения могут выяснить, как сделать шрифт жирным / курсивным / любым другим, то и ваш браузер сможет это сделать.
Обратите внимание, что это относится только к локальным шрифтам. Вашему браузеру требуется дополнительная спецификация для шрифтов, размещенных удаленно, потому что система шрифтов вашего компьютера не сможет «помочь» этому.
Комментарии:
1. Имеет смысл. Копаем глубже…. Давайте возьмем системный шрифт, подобный этому:
/usr/share/fonts/wenquanyi/wqy-zenhei/wqy-zenhei.ttc: WenQuanYi Zen Hei Mono,文泉驛等寬正黑,文泉驿等宽正黑:style=Regular
в Arch Linux. Второй явно является локальным вариантом (с точки зрения языка), так правильно ли делатьlocal(english name)
,local(other name)
, ….? Мне кажется, что это может привести к ошибкам, если в рассматриваемой системе нет правильных сопоставлений шрифтов. Я, конечно, могу легко представить системы, в которых ссылаются только на локальное имя, а не на полные сопоставления i18n в системе шрифтов….2. Для меня это тоже звучит рискованно. Существует очень мало ситуаций, в которых использование локальных шрифтов на общедоступном веб-сайте является хорошей идеей, поскольку у вас нет гарантии того, какие шрифты есть у конечного пользователя, и правильно ли они настроены. Если вы хотите быть абсолютно уверены, что шрифты будут использоваться правильно, тогда вам нужны шрифты, размещенные удаленно.
3. Согласен для простых сайтов. Но для i18n / CJK это необходимо. Файлы шрифтов имеют большой размер (2-3 МБ на вес ), поэтому … 10 МБ . Следовательно, почему стеки i18n полагаются на системные шрифты так же, как стеки emoji. Для смайликов…. Кого это волнует? У вас нет соображений «шрифт». Это просто цвет и не имеет значения. Для i18n… как вы заявили, все становится сложнее. В последнем случае, который может быть ошибочным, как описано, я бы также поставил под сомнение сопоставления весов и т. Д. Теоретически, как вы заявили, должно быть хорошо, если система шрифтов надежна, что является большим, если. Даже подстановка внешних шрифтов в большинстве случаев является «нет».
4. В качестве реального конкретного примера с помощью быстрого поиска. Стек локальных шрифтов для японского языка:
font-family : 'ヒラギノ角ゴ ProN' , 'Hiragino Kaku Gothic ProN' , '游ゴシック' , '游ゴシック体' , YuGothic , 'Yu Gothic' , 'メイリオ' , Meiryo , 'MS ゴシック' , 'MS Gothic' , HiraKakuProN-W3 , 'TakaoExゴシック' , TakaoExGothic , 'MotoyaLCedar' , 'Droid Sans Japanese' , sans-serif;
5. Да, я не рассматривал смайлики. Честно говоря, 10 МБ не кажутся такими уж большими, особенно учитывая, что шрифт будет кэшироваться. Конечно, у вас могут быть особые обстоятельства, когда вам нужно особенно внимательно относиться к размеру загрузки. В любом случае, похоже, вам нужно выбрать свой яд: либо возиться
font-synthesis
и подвергать себя риску неправильной настройки устройства пользователя, либо заставить пользователя использовать больший размер загрузки.
Ответ №2:
если вы работаете с Visual Studio, вы можете просто перетащить его на кодовую страницу css, она покажет вам название семейства шрифтов
Комментарии:
1. Это не то, что было задано, и это не ответ. Это также основано на предположениях, которые не имеют отношения к делу…..
2. я также могу видеть ваше имя idk, если я правильно его прочитал, обезьяна