【发布时间】:2022-01-22 14:05:51
【问题描述】:
作为主要使用英式英语的人,CSS 不接受 colour 作为有效属性这一事实相当令人讨厌,尤其是当它接受 grey(及其偏差)作为有效属性时价值观。为什么 CSS 允许在值中使用英式英语,而不是在属性中?
根据W3 CSS color specification,CSS color 值的官方拼写是gray:
但是,它也接受grey(及其偏差)就好了:
.gray {
color: gray;
}
.grey {
color: grey;
}
<span class="gray">gray</span>
<span class="grey">grey</span>
这也是有道理的,因为 X11 color names(CSS 颜色级别 3 adapted from)将 grey 拼写列为有效替代。
但是,为什么 CSS Colors Level 3 不允许 colour 作为属性?
.color {
color: red;
}
.colour {
colour: red;
}
<span class="color">color</span>
<span class="colour">colour</span>
规范的创建者是否有特定的理由允许替代值而不是属性?
【问题讨论】:
-
致读者:这个问题不是基于意见的;它有一个明确的、记录在案的答案(参见 Kaiido 的答案)。值得一提的是,工作组用美式英语实现了 CSS(尽管并非在所有领域都完全正确。我在看着你,动画填充模式:forwards )。 “grey”是美式英语中“gray”的可接受变体,但“color”不是“color”的可接受变体。
标签: css terminology