【发布时间】:2021-07-11 21:50:10
【问题描述】:
我注意到 CSS 属性值有时默认使用“px”,即使没有指定。但是,对于其他属性,不指定单位是错误的。为什么是这样?一般来说,哪些属性需要“px”,哪些默认为“px”?
以下是每种属性的几个示例。我在 Ubuntu 上使用最新版本的 Firefox:
-
默认为“px”:
- 边距/填充
- 还有margin-left、padding-right等。
- 宽度/高度
- 边距/填充
-
如果没有单元则忽略/出错:
- padding-inline、margin-block 等。
- 还有margin-block-start、padding-inline-end等。
- 边界半径
- 还有border-radius-top-left等
- padding-inline、margin-block 等。
我注意到“忽略”列表较新。 width/height/padding/margin 和山一样古老,border-radius 有点新,padding/margin-inline/block 是全新的,甚至在我写这篇文章时还没有在 Edge 中。年龄和这个有关系吗?过去是否有某种属性值标准化,CSS 维护者不想为旧属性要求单位,因为这会破坏旧网站?
为什么有些 CSS 属性需要单位而有些默认为“px”?
【问题讨论】:
-
Defaults to "px": --> 你是如何验证它们默认为 px 的?
-
@TemaniAfif 我通过试用进行了验证。开发工具帮助很大。