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

问题描述 投票:0回答:3

可以在某些地方获取 HTMLX11 颜色名称 及其 RGB 等效项的列表。 例如我们可以发现“Aquamarine”是“#70DB93”。 想必浏览器知道这些映射。 有没有办法使用 javascript 询问浏览器并获取它支持的颜色名称列表(以及浏览器计划使用的 RGB)?

javascript html colors rgb
3个回答
2
投票

这些是 Javascript 的元(它们在 CSS 等中使用),因此我怀疑它们是否可以以这种形式进行查询。

以下是所有浏览器应该知道的列表:CSS颜色名称

从该页面:

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 上实现。我能够做到这一点(我在几分钟内就把这些组合在一起,请耐心等待):

<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)

我对 Javascript 不太熟悉,无法探测该颜色,但看起来可以做到。 如果我对这个项目很着急,我只需将颜色串起来(就像 Safari 那样向我显示该警报)并抓取每个部分。 然而,由于这是 Javascript/DOM,我知道有一种方法可以进入那里并获取每个颜色组件,但我不知道它是什么。 至少我已经为你指明了道路,不是吗?


1
投票

Firefox等浏览器支持的这些颜色名称不是HTML颜色名称,而是X11颜色名称

维基百科有这些颜色的列表和示例,因此您可以确定浏览器是否支持它们。

我会做一些研究,看看 Firefox(作为示例)在什么时候添加此支持,看看您是否可以通过 js 查询它。


0
投票

您可以从预定义的颜色列表开始,然后检查浏览器是否支持它们:

https://stackoverflow.com/a/64725503/2876079

© www.soinside.com 2019 - 2024. All rights reserved.