HTMLまたはX11 の色名とそれに相当する RGBのリストを取得する場所があります。たとえば、「アクアマリン」は「#70DB93」であることがわかります。おそらくブラウザはマッピングを知っています。javascript を使用してブラウザに問い合わせ、サポートしている色名のリストを取得する方法はありますか (ブラウザが使用する予定の RGB とともに)?
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 であるため、そこに入って各色コンポーネントを取得する方法があることは知っていますが、それが何であるかはわかりません。少なくとも私はあなたに道を譲りましたよね?
Firefox などのブラウザーがサポートするこれらの色名は、HTML の色名ではなく、X11 の色名です。
ウィキペディアにはこれらの色のリストとサンプルが含まれているため、ブラウザーがそれらをサポートしているかどうかを判断できます。
Firefox (例として) がどの時点でこのサポートを追加して、js を介してクエリできるかどうかを確認するために、ちょっと調べてみます。