Color Contrast Formula
by queryj
JavaScript
function luminanace(r, g, b) {
var a = [r,g,b].map(function(v) {
v /= 255;
return (v <= 0.03928) ?
v / 12.92 :
Math.pow( ((v+0.055)/1.055), 2.4 );
});
return a[0] * 0.2126 + a[1] * 0.7152 + a[2] * 0.0722;
}
var a =
(luminanace(255, 255, 255) + 0.05) / (luminanace(0, 0, 255) + 0.05); // 1.074 for yellow
alert(a);
var b = (luminanace(255, 255, 255) + 0.05) / (luminanace(0, 0, 255) + 0.05); // 8.592 for blue
// minimal recommended contrast ratio is 4.5 or 3 for larger font-sizes
alert(b);