是否有理由为十六进制CSS颜色值使用大写字母?

smo*_*nff 12 css case-insensitive uppercase

我看到CSS属性值中的颜色通常以大写形式编写:

.foo .bar {
  background-color: #A41B35;
  color: #FFF;
}
Run Code Online (Sandbox Code Playgroud)

但你也可以使用:

/* Same same */
.foo .bar {
  background-color: #a41b35;
  color: #fff;
}
Run Code Online (Sandbox Code Playgroud)

看起来使用小写值也是一样的,并且,颜色的CSS值不区分大小写.许多图形设计软件也使用大写形式.在源代码中找到大写符号是很常见的,看起来有类似传统的东西.

我理解一致性的事情,它在你的软件中应该是相同的,但是由于标准没有给出好的指示,人们做他们想做的事他们被告知做什么.

是否有合理的理由,如历史性,兼容性,旧IE6黑客,表演或实际原因?

Bob*_*ack 15

我不知道除个人偏好之外的任何差异.就个人而言,我更喜欢小写,因为它更快阅读,虽然在非常短的字符串如CSS颜色值,其好处可能是微不足道的.真的,我认为这只是因为我认为小写看起来更好.

十六进制,但是,传统的大写形式,所以也许我-严格来说-在"错误".

  • 人们主要通过顶部的外观来识别字母和数字,因此全部使用大写更有意义。对我来说,这也读起来更好,但我不会称任何人使用小写字母错误或任何东西。 (2认同)

Pat*_*ick 9

这真的不重要,但重要的是有一个约定并坚持下去。我喜欢使用严格的 sass-lint 规则来强制使用小写十六进制值,并在可能的情况下使用短值(例如#fff代替#ffffff)。

以下是我选择小写的原因;

  • 打字更容易、更快(我改变了我的大写键的键绑定,使用 shift 很尴尬,尤其是混合数字和字母)

  • 如果您知道会发生什么,搜索内容会更容易。(假设您正在将旧代码重写为 Sass,您已经修复了所有出现的#aa99cc,但是AA99cc, Aa99CC, A9C,a9c呢?Linting 会为您找出这些问题)

  • 小写字母对于人类来说也更容易阅读,例如,比较解密 C68B80D 和 c68b80d。 (5认同)
  • 小写十六进制在 CSS 中可能没问题,但十六进制数字可以位于项目代码中的任何位置,并且根据约定,“0xcad”或“cadh”可能看起来不像 0xCAD 那样可读。 (3认同)

oᴉɹ*_*ǝɥɔ 5

没有标准,但一致性很重要。

大写符号对于将数字(十进制或十六进制)与单词分开以保持一致性是有意义的。例如,"1px solid #D0D0D0"所有字母和关键字都是小写(短),数字/数字是高;请注意,"0""D"都是数字。

这也与项目的其余部分一致,这些部分可能具有不同的十六进制语法,如0xCADor\xCADCADh。写作0xcad\xcad否则cadh将不可读。


Shr*_*mpy 5

今天没有人质疑十六进制数字不区分大小写,但是与其他数字系统相比,不区分大小写是相当特殊的。事实上,多功能数字系统转换器很少有这种例外,它们假设数字仅由大写字符组成,或者仅由小写字符组成。

从历史上看,十六进制数字仅用大写字母表示,这仅仅是因为早期操作系统不编码小写字符。因此,做逆向计算的人肯定会选择首都。