2014-05-24 1 views
7

저는 단지 opacity for interactive fading을 생성했습니다.CSS3 불투명도의 최대 정밀도는 얼마입니까?

그러나 불투명도에 대해 경계가없는 값을 사용하는 것은 좋지 않다고 생각합니다. 최대 정밀도가 최대 javascript보다 정밀도가 낮은 경우 브라우저는 값을 반올림하는 것처럼 보이지만 변경된 것으로 간주합니다.

그렇다면 CSS3에 적합한 최대 정밀도는 무엇입니까 opacity?

+5

저는 이것이 구현에 따라 달라지는 것을 보았습니다. – BoltClock

+0

구체적인 증거는 없지만 IE는 계속 놀고 있습니다. 저는 항상 0과 1 사이의 소수점 이하의 불투명도를 생각했습니다. 11 가지 가능성을 허용합니다. 그다지 많지는 않지만 '변경'을 보장합니다. –

+0

방금 ​​시도했습니다. [Math.random in Chrome] (http://jsfiddle.net/pXqdH/1/), 소수점 이하 16 자리 설정 및 문제가 문제가 아닌 것처럼 보일 수 있습니다. 문제는 더 실용적 일 것입니다. 당신은 실제로 무엇의 차이를 볼 수 있습니까? – adeneo

답변

5

불투명도는 기본적으로 원하는 모든 소수 자릿수를 허용하지만 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 개 소수입니다 아래로 반올림됩니다.

이것은 Chrome에서 모두 테스트되었으며 BoltClock과 마찬가지로 구현 시마다 다를 수 있습니다.

관련 문제