首页 > 解决方案 > Javascript 的“document.querySelector().style.backgroundColor”将 HEX 转换为 RGB 是否有原因?

问题描述

这是我在这里的第一个问题,请温柔。我刚刚注意到在 Safari、Chrome 和 Firefox 的控制台中,以下脚本中的颜色值总是返回 RGB 值而不是 HEX 值。并不是说它阻止了代码工作或任何事情,我只是想知道为什么控制台不返回发送的 HEX 值?Javascript 是否总是将颜色值转换为 RGB?它是不是其他范式的一等公民?

function randomHEX() {
    var HEXvalues = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, "A", "B", "C", "D", "E", "F"];
    var newHEX = "#";

    for (i = 0; i < 6; i++) {
        var nextIndex = Math.floor(Math.random() * HEXvalues.length); // grab a random value from the array
        newHEX += HEXvalues[nextIndex]; // increment values to newHEX
    }

    document.querySelector("#hexName").textContent = newHEX; // use newHEX to fill text of ID hexName
    document.querySelector(".container").style.backgroundColor = newHEX; // use newHEX to change background color of box
}

Safari 控制台窗口

任何信息,将不胜感激。

非常感谢。


附言

感谢那些回复的人。我的问题是为什么是RGB?为什么不默认它收到的十六进制数?为什么Javascript 使用 .style.backgroundColor 将 HEX 值转换为 RGB 值?

再次,非常感谢。

标签: javascripthtmlmethodshexrgb

解决方案


是的,默认情况下它显示为 RGB。要将其转换为十六进制,这里已经回答了链接


推荐阅读