28

事实证明,在谷歌上搜索这个问题的答案很困难,所以我认为这里有人应该知道。

在 CSS 中,我看到零像素被简单地声明为“0”,但也被声明为“0px”。

mystyle { width: 0; }

anotherstyle { width: 0px; }

'0' 的小问题是,如果您将其更改为某个非零值,您可能会忘记添加 'px'。并且在将值设为“0”时,您可能会忘记删除“px”。我希望我的代码保持纯粹的一致性,像这样的小事情让我发疯。

这真的归结为个人偏好,比如在哪里缩进?

它们似乎都有效,但哪种方式更好,为什么?

谢谢。


为清楚起见编辑:

我写了“像这样的小事让我发疯”

没有 0 的“px”不是我所指的。

让我发疯的是,有两种不同的方法可以做同样的简单事情。

就个人而言,尽管忘记在适当的地方添加/删除“px”这个小问题,但我会继续使用“0”,因为我知道它和其他方式一样可以接受。

4

4 回答 4

34

它们是相同的。

使用width: 0,因为它更短且更具可读性。

特别是当你有,例如:

padding: 0px 0px 9px 8px

对比

padding: 0 0 9px 8px

请参阅规格

长度值的格式(在本规范中用<length> 表示)是一个<number>(带或不带小数点),紧跟一个单位标识符(例如,px、em 等)。 在零长度之后,单元标识符是可选的。


'0' 的小问题是,如果您将其更改为某个非零值,您可能会忘记添加 'px'。并且在将值设为“0”时,您可能会忘记删除“px”

一旦你养成了在0没有单位标识符的情况下写作的习惯,这种情况就不会发生。

于 2011-03-19T00:52:48.293 回答
2

我总是使用 0(没有单位),除非我想明确设置单位,只是因为它更短。重要的是要保持一致。

于 2011-03-19T00:52:55.470 回答
1

我认为 0 就是 0,不管你有什么。某物的 0% 与某物的 0 像素相同。我想……至少我是这么想的,乘法似乎同意我的看法。

于 2011-03-19T00:53:12.160 回答
0

如果您在样式表中使用多种类型的 CSS 单位(%、em、inch...),则最好保留预期的单位(在您的情况下为 px)。

在旁注中,请记住关键字none不一定重定向到0(即使在视觉上它具有相同的结果)。

于 2011-03-19T01:20:46.023 回答