'property: 0' или 'property: 0px' в CSS?


Я видел, что эта нотация используется много, и мне было интересно, есть ли какая-либо заметная разница между этими двумя нотациями?

element#id
{
  property: 0;
}

и

element#id
{
  property: 0px;
}

я использую property: 0px; все время, как я считаю, это так, но я не совсем уверен, если браузер интерпретирует 0px иначе, чем 0.

кто-нибудь знает, какой из них лучше или правильнее?

9 61

9 ответов:

единица идентификаторы дополнительно, но нет заметного повышения производительности (хотя вы are сохранение двух символов).

по словам спецификация W3C CSS 2.1 для синтаксиса и основных типов данных:

формат значения длины (обозначаемого в этой спецификации ) - это (с десятичной запятой или без нее), за которым сразу же следует идентификатор единицы (например, px, em и т. д.). после a нулевая длина, идентификатор единицы измерения является необязательным.

(выделено мной)

в то время как единица измерения является необязательной, когда значение 0, Я склонен оставлять его, так как я могу настроить значения с помощью инструментов разработчика Chrome, нажав на значение и нажав клавиши со стрелками вверх/вниз. Без подразделения это действительно невозможно.

кроме того, CSS minifiers очищают единицы от 0 значения, в любом случае, так что это не будет иметь значения в конце.

они одинаковы. Браузер интерпретирует оба как 0, поэтому идите с тем, что более читаемо для вас.

ноль это ноль. 0px = 0% = 0em = 0pt= 0

большинство людей оставляют единицы, потому что это просто лишнее.

насколько я знаю, нет никакой разницы между ними, поскольку 0px = 0em = 0ex = 0% = 0. Это чисто до вас, как разработчик, чтобы решить, что вам больше нравится (если у вас нет корпоративных стандартов кодирования, которые вы должны следовать, конечно).

из большинства примеров кода, которые я видел, большинство людей используют unitless версию. Для меня это просто выглядит чище. Если вы нажимаете значительный объем данных (скажем, если Вы Google), эти два байта могут добавить большую пропускную способность, особенно поскольку вы, скорее всего, повторите их несколько раз в своей таблице стилей.

ноль пикселей равен нулю дюймов и нулю метров и так далее. 0 все, что вам нужно.

Я лично найти 0 чище, чем 0px. Это два дополнительных символа, которые можно сложить. Зачем добавлять дополнительные байты, когда вам это не нужно. Я вижу padding: 0px 0px 0px 0px который можно легко выразить как padding: 0 слишком часто.

вы можете использовать либо-мой лучший совет не беспокоиться слишком много, но быть последовательным в этом так или иначе. Я лично предпочитаю указывать '0px' по следующим причинам:

  • использование 0px делает вещи более совместимыми со всеми другими размерами "px", которые вы указали
  • Это также более подробно и дает понять, что вы устанавливаете нулевую длину, а не флаг "выключить это"
  • это немного легче настроить '0px' значение, чтобы сделать его другим значением, если требуется

Как говорят другие, на самом деле не имеет значения, если его 0, хотя я решил добавить измерения ко всем моим значениям, чтобы кто-нибудь еще, глядя на мои файлы CSS, мог оценить, с какими измерениями они, вероятно, будут иметь дело в другом месте.