Die Farben in dieser Tabelle sind alle nicht transparent. Ich vermute, dass der Wert für "A" auf "FFF" gesetzt ist.
Wie lautet der Code für die Transparenz?
Zum Beispiel diese Farbe FFF0F8FF (AliceBlue), zu einem transparenten Code wie ??F0F8FF
?
Hier ist die Tabelle der %-zu-Hex-Werte
Beispiel: Für 85% Weiß würde man #D9FFFFFF verwenden.
100% — FF
95% — F2
90% — E6
85% - D9
80% — CC
75% — BF
70% — B3
65% — A6
60% — 99
55% — 8C
50% — 80
45% — 73
40% — 66
35% — 59
30% — 4D
25% — 40
20% — 33
15% — 26
10% — 1A
5% — 0D
0% — 00
Die Transparenz wird durch den Alphakanal (AA
in #AARRGGBB
) gesteuert. Der Maximalwert (255 dez, FF hex) bedeutet vollständig undurchsichtig. Der Mindestwert (0 dez, 00 hex) bedeutet vollständig transparent. Werte dazwischen sind halbtransparent, d.h. die Farbe ist mit der Hintergrundfarbe gemischt.
Um eine vollständig transparente Farbe zu erhalten, setzen Sie den Alpha-Wert auf Null. Die Werte RR
, GG
und BB
sind in diesem Fall irrelevant, da keine Farbe sichtbar sein wird. Das bedeutet, dass #00FFFFFF
("transparentes Weiß") die gleiche Farbe ist wie #00F0F8FF
("transparentes Aliceblau").
Um es einfach zu halten, wählt man Schwarz (#00000000
) oder Weiß (#00FFFFFF
), wenn die Farbe keine Rolle spielt.
In der Tabelle, die Sie verlinkt haben, finden Sie Transparent
als #00FFFFFF
definiert.
Hinzufügen zu den anderen Antworten und tun nichts mehr von dem, was @Maleta in einem Kommentar auf https://stackoverflow.com/a/28481374/1626594 erklärt, tun *alpha255 dann Runde dann zu hex**. Hier's eine schnelle Konverter
function rgb2hex(rgb) {
var rgbm = rgb.match(/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?((?:[0-9]*[.])?[0-9]+)[\s+]?\)/i);
if (rgbm && rgbm.length === 5) {
return "#" +
('0' + Math.round(parseFloat(rgbm[4], 10) * 255).toString(16).toUpperCase()).slice(-2) +
("0" + parseInt(rgbm[1], 10).toString(16).toUpperCase()).slice(-2) +
("0" + parseInt(rgbm[2], 10).toString(16).toUpperCase()).slice(-2) +
("0" + parseInt(rgbm[3], 10).toString(16).toUpperCase()).slice(-2);
} else {
var rgbm = rgb.match(/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?/i);
if (rgbm && rgbm.length === 4) {
return "#" +
("0" + parseInt(rgbm[1], 10).toString(16).toUpperCase()).slice(-2) +
("0" + parseInt(rgbm[2], 10).toString(16).toUpperCase()).slice(-2) +
("0" + parseInt(rgbm[3], 10).toString(16).toUpperCase()).slice(-2);
} else {
return "cant parse that";
}
}
}
$('button').click(function() {
var hex = rgb2hex($('#in_tb').val());
$('#in_tb_result').html(hex);
});
body {
padding: 20px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Convert RGB/RGBA to hex #RRGGBB/#AARRGGBB:<br>
<br>
<input id="in_tb" type="text" value="rgba(200, 90, 34, 0.75)"> <button>Convert</button><br>
<br> Result: <span id="in_tb_result"></span>