css十六进制中,#0f0f也是绿色吗? 不是应该#0f0是绿色吗

html-css022

css十六进制中,#0f0f也是绿色吗? 不是应该#0f0是绿色吗,第1张

#0f0f不是绿色,这个是不有效的缩写颜色,正确的应该是#00ff00,或者它的缩写形式0f0,缩写的规则基本上可以简单的说两个相同的数字或字母可以缩写成一个,但要一组组对应上,比如#00ab11是不能缩写的,因为中间ab这组不能缩写。

这是因为电脑内部采用二进制,而如果我们编程的时候直接用二进制那么每个指令和操作数都会很长,而二进制转换为四进制、八进制、十六进制是很方便的(甚至都不需要转换,只要把二进制数按2位分组就变成四进制,按3位分组就是八进制,按4位分组就是十六进制),通过比较可以发现十六进制数的长短是最合适的,因此电脑的机器码就以十六进制的形式表示(但电脑实际是按二进制来处理的)。而电脑之所以采用二进制,是因为二进制只存在两种状态即0和1,这非常适合于电脑数据的存储和传输,比如硬盘中某个存储单元“有磁”就代表1,“无磁”就代表0,这样的话一个数字只要用二进制的表示方式就可以很方便地存储到硬盘中了,同理,网线中某条铜线“有电”就代表1,“没电”就代表0,这样二进制数值就能通过网线快速传输了。而如果使用十进制,就要用十种不同的物理状态来表示数据(比方说没电是0,满电是9,中间再根据电量的不同分别划分为1到8),可以想象一下,这样的方式将会使电脑的硬件和软件都无法承受,直接崩溃!所以可以说二进制是电脑技术基础的基础,就像中国的太极理论,用阴阳两仪来形容世间万物,然后“两仪生四象”,“四象生八卦”……这不就是二进制转四进制、八进制、十六进制吗?

rgb颜色格式是由3组0~255的数字构成,分别是红(Red)、绿(Green)、蓝(Blue)的色值。转为16进制就是分别把红绿蓝三种颜色的色值转为十六进制,前面加个井号例如:rgb(255,255,255),255的16进制为FF,所以结果就是#FFFFFF