根据动态设置的背景颜色更改文本颜色的值

时间:2012-06-15 20:42:55

标签: php jquery html5 css3

让我们说,我有一个日历 - 每个条目都有不同的背景颜色(每个用户一种颜色)。有浅色和深色背景色,供用户选择自己喜欢的颜色。现在我想设置适合背景样式的文本颜色。我将在哪里以及如何开始?提前谢谢。

2 个答案:

答案 0 :(得分:2)

如果您正在寻找个案解决方案,您可以这样做:

$("#Calendar .day").each(function() {
    var $this = $(this);

    //If the background color is black - set text color to white.
    if($this.css("background-color") == "#000000") {
        $this.css("color", "#FFFFFF");
    }

    //A bunch more if statements

});

同时

为了方便起见,您可以使用以下代码找到补色:

JS function to calculate complementary colour?

答案 1 :(得分:0)

您可以尝试仅选择所选颜色的按位反转。

我认为这个代码片段(在JavaScript中)可以解决这个问题。

var RGB_Value = "ffaacc" //set this var to the hex value the user selected 
var colorNum = parseInt(RGB_Value, 16); // assume radix of 16 (hex) and convert string to number 
var inverseColor = ~colorNum; //bitwise inverse of the number 
var RGB_Inverse = nMyNumber.toString(16); //convert the number into a hex string