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

是否有理由对十六进制CSS颜色值使用大写字母?,css,case-insensitive,uppercase,Css,Case Insensitive,Uppercase,我发现CSS属性值中的颜色通常以大写形式书写: .foo .bar { background-color: #A41B35; color: #FFF; } 但您也可以使用: /* Same same */ .foo .bar { background-color: #a41b35; color: #fff; } 或: 在任何情况下(ho ho ho),如果可能的话,使用诸如白色之类的命名颜色来代替fff可以让我们的生活更轻松,但这是另一个问题 看起来使用小写值也可以做到这一点

我发现CSS属性值中的颜色通常以大写形式书写:

.foo .bar {
  background-color: #A41B35;
  color: #FFF;
}
但您也可以使用:

/* Same same */
.foo .bar {
  background-color: #a41b35;
  color: #fff;
}
或:

在任何情况下(ho ho ho),如果可能的话,使用诸如白色之类的命名颜色来代替fff可以让我们的生活更轻松,但这是另一个问题

看起来使用小写值也可以做到这一点,而且,颜色也使用CSS值。许多平面设计软件也使用大写形式。在源代码中发现大写符号是很常见的,看起来有点像传统

我理解一致性的问题,在你的软件中,它应该在任何地方都是一样的,但由于标准没有给出一个很好的指示,人们做他们想做的或他们被告知要做的事情


是否有合理的原因,如历史原因、兼容性、旧的IE6攻击、性能或实际原因?

CSS值不区分大小写。说使用大写字母不是一个好习惯。遵守规范。使用小写。

除了个人偏好之外,我不知道还有什么不同。就我个人而言,我更喜欢小写,因为它更易于阅读,尽管在CSS颜色值等非常短的字符串中,其好处可能微不足道。真的,我想这只是因为我觉得小写看起来更好


然而,十六进制传统上是用大写字母书写的,所以严格地说,也许我是错的。

这真的不重要,但重要的是要有一个约定并坚持它。我喜欢使用严格的sass lint规则强制使用小写十六进制值,并尽可能使用短值(例如,
#fff
而不是
#ffff

以下是我选择小写的原因

  • 打字更容易、更快(我已经更改了caps键的键绑定,使用shift键很不方便,尤其是混合数字和字母)

  • 如果你知道什么是你想要的,你就更容易去寻找。(假设您正在将旧代码重写为Sass,您已经修复了所有出现的
    #aa99cc
    ,但是
    aa99cc
    aa99cc
    A9C
    A9C
    ,Linting会帮您找出这些问题)

“找到大写符号是很常见的”

这个答案并不是说你应该在CSS中使用大写,而是美学上的猜测和历史上的先例,为什么你经常看到大写

(1) 因此,您已经知道存在微小字母(x高度或大约为majuscule高度的一半)和majuscule字母(大写或uncial,其中字母几乎占据em框的全部高度),但也存在全高数字和低高度数字(也称为旧式数字、小写、悬挂数字)。在现实世界中,在外祖父时钟之外,你找不到多少这些数字,但许多字体通过“onum”功能甚至“scmp”(小大写)功能支持它们

知道这些高度变体都存在,显示全高数字与半高字母的混合会导致字符高度不一致,反之,将半高数字与全高字母混合会导致字符高度不一致(当然,你不能在OpenType功能之外使用半高数字,因为它们没有唯一的Unicode代码点)。因此,像PhotoShop这样的专业设计应用程序可能会倾向于外观的美观,而不是打字的效率(按住shift键),这在CSS普及之前并不是最重要的

(2) 早期的编程语言(COBOL、FORTRAN、BASIC…)和输入终端设备都是大写的-没有键入小写的键,即使有,这些字符在有限的字符集中也不存在


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

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


这也与项目的其他部分一致,这些部分可能具有不同的十六进制语法,如
0xCAD
\xCAD
CADh
。编写
0xCAD
\xCAD
CADh
将不可读。

今天没有人质疑十六进制数的大小写敏感性,但是与其他数字相比er系统,不区分大小写是相当特殊的。事实上,通用数字系统转换器很少例外,它们假定数字只由大写字母组成,或者只由小写字母组成

从历史上看,十六进制数字仅用大写字母表示,原因很简单,因为早期的操作系统没有对小写字符进行编码。因此,进行复古计算的人肯定会选择大写字母。

A让你知道,有很多人更喜欢小写字母。就我个人而言,我发现小写字母更容易识别,也更容易识别o写,因为大多数(如果不是全部的话)CSS代码是小写的,并且对大小写类型不敏感。哦,而且代码看起来更好。:3

大写是

例外情况是,当小写字母是易读大小的两倍时,由于“字型”的缘故,它更容易阅读——“d”、“h”和“p”上的尖位使“xxxd”和“xhxpx”可以区分。无论大小,“1LMNMN”等代码都没有字型

小写字母也有类似的字符,如“1l”和“mnw”以及其他取决于字体的字符。大写字母也有O和0的字符,这就是为什么在控制台字体上使用十字线零

对第二个问题采取了完全不同的方法,使用了所有26个大写字母,只有6/10的数字:2、3、4、5、6和7

早期的计算机工程师做得很好
/* Check the link to see why it can be interesting */
.foo .bar {
  background-color: #A41b35;
  color: #FfF;
}