html为什么颜色需要十六进制?

html-css010

html为什么颜色需要十六进制?,第1张

不是必须要用十六进制的。

RGB 8位色中定义三个基色(红、绿、蓝)饱和度是0~255,用十六进制表示是00~FF。

CSS中可以用“#3个十六进制”或者 “#6个十六进制”或者“RGB(三个十进制)”都可以。

像RGB(30%, 40%, 50%)这样,用百分比也可以。

html4.0标准是用red、yellow、blue等来表示颜色,但这种颜色值很有限(因为单词就那么几个),所以CSS里用RGB来定义更丰富的颜色,一共有256*256*256种。

至于为啥饱和度化为256个等级,这与显示器有关,只能处理256个等级的饱和度。不过现在已经不止8位了,16位、32位都有,只要你的显示器够优秀,就能处理更丰富的颜色。

并不是一定要用16进制数,用10进制一样可以正确显示网页,问题是,16进制时很直观,可以知道三种颜色的大小,熟练的人几乎马上就知道会显示什么颜色.你要知道每种元色的位置,每二位是一个元色.

html 本身是一个表现语言,不具备计算的能力,

html和其他语言组合后,借用了其他语言的计算能力。

比如javascript

parseInt('ff',16).toString(2)

parseInt把ff转为10进制,再转为2进制。

如果在服务端比如asp.net

Convert.ToString(0xff,2)

不同语言都有各自的函数。