CSS3不透明度的最大精度是多少?

时间:2014-05-24 18:05:26

标签: javascript css3

所以我一直在生成opacity for interactive fading

但我认为,使用非基本值来表示不透明度并不是一个好主意。如果最大精度低于精度的最大javascript,则浏览器似乎对该值进行舍入,但认为它已更改。

所以问题是,对CSS3 opacity有什么意义的最大精度?

1 个答案:

答案 0 :(得分:6)

不透明度基本上允许您喜欢的任何小数位数,但问题是HTML只能以256种不同的方式改变其亮度。因此,最敏感的不透明度是黑色的东西,白色的东西,有256种不同色调的可见多样性。这是因为R,G和B之间的比率必须始终保持不变以保持相同的颜色。

因此,由于最敏感的颜色有256个不同的值,因此对可见输出产生影响的最小变化为1/256 = 0.00390625。从理论上讲,这应该是增加不透明度的最小步长。

我已经对此进行了测试,并且使用了一个简单的颜色选择器,我注意到在this example fiddle中,底部div是唯一一个颜色有任何变化的颜色。前2个div的颜色为#000000,而底部div的颜色为#010101。因此,基于此,我会说:

  1. 输入的值不会四舍五入,如果是,则它们总是向下舍入(floor function
  2. 不透明度的最大灵敏度为3位小数。
  3. 应该注意的是,这一切都是在谷歌浏览器中测试的,就像BoltClock所说的那样,这可能会因实施而异。