Hex Farben: Numerische Darstellung für „transparent“?
-
20-09-2019 - |
Frage
Ich bin der Aufbau ein Web-CMS, in dem der Benutzer Farben für bestimmte Site-Elemente auswählen kann. Ich möchte alle Farbwerte zu hex konvertieren jede weitere Formatierung Ärger zu vermeiden ( „rgb (x, y, z)“ oder benannte Farben). Ich habe eine gute JS-Bibliothek für das gefunden.
Das einzige, was ich nicht in hex bekommen kann, ist „transparent“. Ich brauche dies, wenn ausdrücklich ein Element als transparent zu erklären, was in meiner Erfahrung kann überhaupt von nicht definieren einen beliebigen Wert verschieden sein.
Weiß jemand, ob dies in eine numerische Form umgewandelt werden? Muss ich alle Verarbeitungsinstanzen einzurichten, um Hex-Werte oder „transparent“ zu akzeptieren? Ich kann mich keinen anderen Weg.
Lösung
Die Transparenz ist eine Eigenschaft außerhalb der Farbe selbst, auch als alpha
Komponente bekannt. Sie können keinen Code als RGB.
Wenn Sie einen transparenten Hintergrund möchten, können Sie dies tun:
background: transparent;
Außerdem weiß ich nicht, ob es hilfreich sein könnte oder nicht, aber, können Sie die opacity
Eigenschaft könnte:
.half{
opacity: 0.5;
filter: alpha(opacity=50);
}
Sie müssen beide, um es in IE und alle anderen anständigen Browsern zu erhalten.
Andere Tipps
HEXA - #RRGGBBAA
Es ist eine relativ neue Art und Weise Transparenz zu tun, es HEXA (HEX + Alpha) genannt wird. Es dauert in 8 Ziffern statt 6. Das letzte Paar Alpha ist. Also das Muster der Paare ist #RRGGBBAA . 4 Ziffern haben, auch funktioniert: #RGBA
Ich bin nicht sicher über seinen Browser-Unterstützung für jetzt aber können Sie das überprüfen § 4.2. Die RGB-hexadezimale Notation: #RRGGBB
Die Syntax einer Die ersten 6 Ziffern sind identisch mit der 6-stellige Schreibweise interpretiert. Das letzte Paar von Ziffern, als Hexadezimalzahl interpretiert, gibt den Alphakanal des Farb, wo Beispiel 3: Dies ist eine kürzere Variante der 8-stellige Schreibweise „erweitert“ in der gleichen Weise wie die 3-stellige Schreibweise ist. Die erste Stelle, als Hexadezimalzahl interpretiert, gibt den roten Kanal des Farb, wo Für den größten Teil, Chrome und Firefox haben damit begonnen, diese Unterstützung:
<hex-color>
ist ein <hash-token>
Token dessen Wert besteht aus 3, 4, 6 oder 8 Hexadezimalziffern . Mit anderen Worten wird eine Hex-Farbe als Hash-Zeichen geschrieben, „#“, gefolgt von einer Anzahl von Ziffern oder Buchstaben 0-9
a-f
(Fall der Buchstaben spielt keine Rolle - #00ff00
ist identisch mit #00FF00
). 8 Ziffern
00
repräsentiert eine vollständig transparente Farbe und eine vollständig ff
opake Farbe dar.
Mit anderen Worten, #0000ffcc
stellt die gleiche Farbe wie rgba(0, 0, 100%, 80%)
(ein leicht transparent blau). 4 Ziffern
0
den Minimalwert darstellt, und stellt die maximale f
. Die nächsten drei Ziffern stellen die grünen, blauen und Alpha-Kanäle sind.
Der Alphakanal definiert den Transparenzwert einer Farbe, so dass jede Farbe 100% transparent ist, solange der Alpha-Wert ist 0. Typischerweise Diese vierkanaligen Farbart als RGBA bekannt ist.
Sie können RGBA in CSS angeben wie folgt:
div {
background: rgba(200, 54, 54, 0.5); /* 50% transparent */
}
Beachten Sie, dass nicht alle Browser unterstützen RGBA, in diesem Fall können Sie eine angeben Rückfall :
div {
background: rgb(200, 54, 54); /* fallback */
background: rgba(200, 54, 54, 0.5); /* 50% transparent */
}
Weitere Informationen über den Browser-Unterstützung und Abhilfen finden Sie hier .
Sie können diese Umrechnungstabelle verwenden: http://roselab.jhu.edu/ ~ raj / MISC / hexdectxt.html
zB wenn Sie eine Transparenz von 60% wollen, verwenden Sie 3C (hex-Äquivalent).
Dies ist nützlich für IE Hintergrundgradienten Transparenz:
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#3C545454, endColorstr=#3C545454);
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#3C545454, endColorstr=#3C545454)";
Dabei gilt startColorstr und endColorstr: 2 erste Zeichen ein Hex-Wert für Transparenz sind, und die übrigen sechs sind die Hex-Farbe
.Es gibt zwei für diese Ansätze: entweder eine bestimmte Farbe als Reserve „transparent“, in dem Fall, dass Sie nicht, dass die Farbe in Bildern ohne es erscheint transparent verwenden können, oder einen vierten Kanal neben Rot, Grün definieren und Blau genannt "alpha", die Transluzenz zeigt / Transparenz.
Verwenden Sie folgenden Hexadezimal-Code für transparenten Text color: # 00FFFF00
Ich war auch für Transparenz versuchen - vielleicht könnten Sie versuchen, leer zu lassen, den Wert Hintergrund z.B. so etwas wie
bgcolor=" "