В каких операционных системах или браузерах имена семейства шрифтов CSS чувствительны к регистру - PullRequest
10 голосов
/ 21 октября 2009

Согласно sitepoint ( источник, которому я обычно доверяю ) при указании font-family имен некоторых операционных систем / браузеров может be с учетом регистра .

Как правило, я всегда использовал значения в смешанном регистре, но мне интересно, будут ли значения в нижнем регистре работать одинаково?

В любом случае у меня нет подавляющего предпочтения, но я бы не хотел, чтобы страница отображалась по-другому, потому что я набрал строчные буквы "v" против "V" где-нибудь в файле CSS.

например. Известны ли случаи, когда 2 div с классами foo и bar, приведенными ниже, на самом деле отображались бы с другим шрифтом?

div.foo{
  font-family:Verdana, Arial, Helvetica;
}

div.bar{
  font-family:verdana, arial, helvetica;
}

Ответы [ 4 ]

9 голосов
/ 16 марта 2012

Хотя обзор синтаксиса CSS говорит

Всегда действуют следующие правила: Все таблицы стилей CSS не чувствительны к регистру, за исключением частей, которые не контролируются CSS. Например, чувствительность к регистру значений атрибутов HTML «id» и «class», имен шрифтов и URI выходит за рамки данной спецификации . В частности, обратите внимание, что имена элементов не чувствительны к регистру в HTML, но чувствительны к регистру в XML.

Модуль css3-fonts раздел требует сравнения без учета регистра:

Для других фамилий пользовательский агент пытается найти имя семьи среди шрифтов, определенных с помощью правил @ font-face, а затем среди доступных системных шрифтов, сопоставляя имена с учетом без учета регистра.

поэтому спецификация CSS3 требует, чтобы имена шрифтов обрабатывались без учета регистра.

3 голосов
/ 21 октября 2009

У этого парня, похоже, проблемы при использовании flex, поэтому в этом есть доля правды:

При использовании CSS во Flex для стиля компоненты, свойство семейства шрифтов может быть чувствителен к регистру на некоторых операционные системы. Например, следующий CSS не будет работать на моем Браузер Safari с Flash Player 10:

.content{font-family: arial;}

но это будет работать:

.content{font-family: Arial;}

Источник

Также взгляните на эту страницу, которую вы можете использовать, чтобы проверить это в своих собственных браузерах / os:

http://meyerweb.com/eric/css/tests/font-name-case-test.html

1 голос
/ 21 октября 2009

My догадываюсь , что это будет потенциальной проблемой только в системах 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-код, размещенный выше в браузерных снимках. Я не нашел ни одного браузера, который бы не работал. Dillo 2.1.1 для Ubuntu Linux не понравилась ни одна из этих линий (может быть, в этой системе не было ни Courier New, ни Courier?), Все остальные показали обе линии в Courier или Courier New. Однако все еще существуют мобильные браузеры, которые не были протестированы, поэтому вам следует стремиться использовать правильную прописную букву на всякий случай.

0 голосов
/ 21 октября 2009

Хороший вопрос действительно. Лично я не слышал о каких-либо проблемах, связанных с чувствительностью к регистру.

Больше всего следует беспокоиться о наличии этих шрифтов в различных системах. Вердана и Ариал не доступны на Mac. Helvetica недоступна в Windows. Вы определили два набора с нулевой площадью пересечения в измерениях Win / Mac.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...