В каких операционных системах или браузерах имена семейств шрифтов CSS чувствительны к регистру
-
05-07-2019 - |
Вопрос
Согласно точка расположения (источник, которому я обычно очень доверяю) при указании font-family
называет некоторые Операционные системы / Браузеры мочь быть чувствителен к регистру.
Обычно я всегда использовал значения со смешанным регистром, но мне интересно, будут ли значения в нижнем регистре работать точно так же?
В любом случае у меня нет подавляющего предпочтения, но я бы не хотел, чтобы страница отображалась по-другому, потому что я ввел строчный "v"
против. "V"
где-то в CSS-файле.
например ,есть ли какие-либо известные случаи, когда 2 divs с foo
и bar
классы, приведенные ниже, на самом деле будут отображаться другим шрифтом?
div.foo{
font-family:Verdana, Arial, Helvetica;
}
div.bar{
font-family:verdana, arial, helvetica;
}
Решение
Мой догадываюсь заключается в том, что это было бы потенциальной проблемой только в системах Linux / Unix, где файловая система чувствительна к регистру.Я был бы удивлен, если бы у какого-либо браузера Windows возникла проблема с этим, поскольку шрифты - это просто файлы в каталоге C:\Windows\Fonts.
Вы могли бы попробовать создать страницу с тестовым текстом узнаваемым шрифтом, например Courier New, но произносите его забавно, как "CoUrIEr nEW", затем перейдите на http://browsershots.org/ где он будет генерировать скриншоты из множества браузеров.Не забудьте также сделать шрифт очень крупным, потому что скриншоты маленькие.
Что- то вроде этого:
<html>
<head>
<style type="text/css">
#proper { font: bold 48px "Courier New",Courier; }
#improper { font: bold 48px "CoUrIEr nEW",CoUrIEr; }
</style>
</head>
<body>
<p id="proper">Test1 - proper caps</p>
<p id="improper">Test2 - improper caps</p>
</body>
</html>
Если только один строка отображается в Courier, тогда этот браузер чувствителен к регистру.
Редактировать:Я протестировал HTML, который разместил выше, в browsershots.Я не нашел ни одного браузера, который не работал бы.Dillo 2.1.1 для Ubuntu Linux не понравилась ни одна строка (возможно, в этой системе отсутствовали как Courier New, так и Courier?), все остальные отображали обе строки в Courier или Courier New.Однако все еще существуют мобильные браузеры, которые не были протестированы, поэтому вам следует на всякий случай использовать правильные заглавные буквы.
Другие советы
Хотя в Обзор синтаксиса CSS говорит
Всегда соблюдаются следующие правила:Все таблицы стилей CSS не чувствительны к регистру, за исключением частей, которые не находятся под контролем CSS.Например, чувствительность к регистру значений HTML-атрибутов "id" и "class", из названия шрифтов, и из URIS выходит за рамки данной спецификации.Обратите особое внимание, что имена элементов не чувствительны к регистру в HTML, но чувствительны к регистру в XML.
В css3-модуль шрифтов раздел предписывает сравнение без учета регистра:
Для других семейств имен агент пользователя пытается найти семейное имя среди шрифтов, определенных с помощью правил @font-face, а затем среди доступных системных шрифтов, соответствующих именам с нечувствительным к регистру сравнением.
таким образом, спецификация CSS3 требует, чтобы имена шрифтов обрабатывались без учета регистра.
У этого парня, похоже, проблемы при использовании flex, так что, похоже, в этом есть доля правды:
При использовании CSS в Flex в стиле компоненты, шрифт-семейства собственность можете быть чувствительны к регистру, на некоторых операционные системы.Например, следующий CSS не будет работать в моем браузере Safari с Flash Player 10:
.content{font-family: arial;}
но это сработает:
.content{font-family: Arial;}
Также взгляните на эту страницу, которую вы можете использовать, чтобы проверить это в ваших собственных браузерах / ОС:
Действительно, хороший вопрос.Лично я не слышал о каких-либо проблемах, которые как-то связаны с чувствительностью к регистру.
О чем вам следует беспокоиться больше, так это о присутствии этих шрифтов в различных системах.Verdana и Arial недоступны на Mac.Helvetica недоступна в Windows.Вы определили два набора с нулевой областью пересечения в измерениях Win / Mac.