'свойство: 0' или 'свойство: 0px' в CSS? - PullRequest
68 голосов
/ 30 ноября 2010

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

element#id
{
  property: 0;
}

и

element#id
{
  property: 0px;
}

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

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

Ответы [ 9 ]

47 голосов
/ 10 мая 2013

Идентификаторы единиц: , необязательно , но заметного увеличения производительности не наблюдается (хотя вы сохраняете два символа).

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

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

(Акцент мой)

29 голосов
/ 23 июля 2013

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

Кроме того, минификаторы CSS в любом случае убирают юниты из значений 0, так что в конце концов это не имеет значения.

15 голосов
/ 30 ноября 2010

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

9 голосов
/ 30 ноября 2010

Ноль всего - ноль. 0px = 0% = 0em = 0pt = 0

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

5 голосов
/ 30 ноября 2010

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

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

3 голосов
/ 30 ноября 2010

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

2 голосов
/ 30 ноября 2010

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

1 голос
/ 10 мая 2016

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

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

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

...