使用Java脚本提取受支持的HTML或X11颜色名称及其RGB值的列表

2022-04-19 00:00:00 colors rgb javascript html

有获取HTML或X11 colour names及其RGB等效项的列表的位置。例如,我们可以发现"Aquamarine"是"#70DB93"。想必浏览器知道这些映射。有没有办法使用Java脚本来询问浏览器,并获得它支持的颜色名称列表(以及浏览器计划使用的RGB)?


解决方案

这些是Java脚本的元数据(除其他用途外,还在css中使用),因此我怀疑它们在该形式中是否可查询。

以下是所有浏览器应知道的列表:CSS Color Names

从该页面:

The W3C HTML and CSS standards have listed only 16 valid color names:
aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive,
purple, red, silver, teal, white, and yellow.

编辑:既然您问了,我至少检查了一下Safari是否可以这样做。我能够做到这一点(I threw this together in minutes, bear with it):

<html>
<head>
    <title>Color Test</title>
    <script type="text/javascript">
        function $(id) { return document.getElementById(id); }
        function do_chocolate() {
            $("foo").style.color = "chocolate";
            alert($("foo").style.color);
        }
    </script>
</head>
<body>
    <div id="foo">
        This should change when you click below
    </div>
    <a href="#" onclick="do_chocolate();">Click me</a>
</body>

当我单击时Safari向我显示此警报:

rgb(210, 105, 30)

我对Java脚本不够熟悉,无法探索这种颜色,但它看起来可以做到。如果我在这个项目上很匆忙,我只会把颜色串起来(就像Safari向我显示警告一样),然后抓住每个部分。然而,由于这是Java脚本/DOM,我知道有一种方法可以进入其中并获取每个颜色分量,但我不知道它是什么。至少我让你走上了正轨,不是吗?

相关文章