Que signifie l'hexadécimal qui représente une couleur CSS? Comment savoir de quelle couleur il s'agit sans mémoriser le code exact? At-il des relations avec le système RVB (et CMJN)?
Je pensais un instant que FF
signifiait 255
en RVB, mais j’ai alors réalisé que 15 ^ 2 n’était pas 255, mais 225.
Hexadécimal utilise seize symboles distincts, dans le cas de CSS, les symboles 0–9
pour représenter les valeurs de zéro à neuf (évidemment) et A, B, C, D, E, F
pour représenter les valeurs de dix à quinze. Donc, en utilisant un caractère hexadécimal, vous pouvez représenter les valeurs 16. Avec deux hexadécimales, vous pouvez représenter les valeurs 256 (16 * 16).
Dans RGB
, vous avez les couleurs représentées par R ed G reen B lue (R = 0-255, G = 0-255, B = 0-255) , nous utilisons donc 3 paires de symboles hexadécimaux! Ainsi, lorsque vous voyez une couleur RVB, vous pouvez effectuer le calcul ci-dessous.
Exemple:
Hex:
#4C8ED5
est RGB:76, 142, 213
.
Parce que 4C = 76
(R ed), 8E = 142
(G reen), D5 = 213
(B lue)!
J'espère que cela aide votre compréhension!
Plus à lire: Hexadécimal sur Wikipedia et un fichier RVB en hexadécimal de Nice Convertisseur
Fondamentalement, si vous aviez FF et que c'était le RED, car il y a deux hexdigits (0-9, A-F) nous faisons: F = 15
15 * (16 ^ 0) = 15
15 * (16 ^ 1) = 240
240 + 15 = 255
RED = 255
les bits (16 ^ 0) et (16 ^ 1) signifient que nous travaillons en base 16 . si vous utilisiez l'exemple de 8040FF de KPE, nous ferions ce qui suit:
F = 15
15 * (16 ^ 0) = 15
15 * (16 ^ 1) = 240
240 + 15 = 255
BLUE = 255
puis
8 * (16 ^ 0) = 8
(BECAUSE WE HAVE 0 WE IGNORE IT)
(16 ^ 1) = 16
(BECAUSE WE IGNORED THE ZERO WE * INSTEAD OF +)
8 * 16 = 128
RED = 128
4 * (16 ^ 0) = 4
(BECAUSE WE HAVE 0 WE IGNORE IT)
(16 ^ 1) = 16
(BECAUSE WE IGNORED THE ZERO WE * INSTEAD OF +)
4 * 16 = 64
GREEN = 64
R = 128
G = 64
B = 255
Considérant que si vous aviez des digits simples, par exemple. F, cela équivaut à 15 donc RED = 15
J'ai trouvé la partie mathématique de certaines des autres réponses plutôt déroutante.
C'est en fait super simple. J'ai trouvé une bonne explication ici.
Les couleurs des ordinateurs s’expriment en combinant le rouge, le vert et le bleu dans des proportions différentes. Les valeurs pour chaque couleur sont comprises entre 0 et 255. En notation RVB, nous exprimons un rouge pur en écrivant (255,0,0), où le vert et le bleu ont la valeur 0. Si nous mélangeons la même quantité de chaque couleur, nous obtenons différentes nuances de gris. . (123,123,123) est une nuance de gris, (0,0,0) représente le noir et (255,255,255) est le blanc.
Le système hexadécimal reprend exactement les mêmes principes et plages de valeurs et tente de les exprimer de manière plus courte.
Dans notre système décimal commun, les nombres à un chiffre vont de 0 à 9 et nous devons ensuite utiliser deux chiffres (c'est-à-dire 10).
Pour continuer à exprimer des nombres plus grands avec un seul chiffre, le système hexadécimal donne aux nombres 10 à 15 une représentation longue d'un caractère en leur attribuant des lettres. Alors maintenant: 10 = A, 11 = B, 12 = C, 13 = D, 14 = E, 15 = F. (Les lettres peuvent être en minuscules).
Regardons comment notre système décimal fonctionne car il est très similaire à l'hexadécimal. Dans le nombre 13, le premier chiffre est un mais représente un 10 et pour obtenir treize on ajoute 3, 13 = 10 + 3. C'est-à-dire que nous multiplions le deuxième chiffre de droite à gauche par 10, puis ajoutons le nombre suivant. Le 2 sur 23 représente un 20. En hexadécimal, nous multiplions toujours le deuxième chiffre de droite à gauche par 16. (Hexadécimal signifie seize).
Regardons le nombre 4C. Ici on multiplie 4 fois 16 puisqu'il s'agit du deuxième nombre de droite à gauche, 4 * 16 = 64. C signifie 12, donc nous l’ajoutons maintenant à 64. 64 + 12 = 76, 4C = 64.
Pour exprimer le plus grand nombre que nous devons écrire, nous utilisons FF, qui signifie 255. Nous pouvons donc exprimer tous les nombres dont nous avons besoin pour le rouge, le vert et le bleu avec 6 caractères.
Pour raccourcir cela encore plus, vous pouvez écrire ceux de 3 caractères où chaque caractère est doublé. Par exemple # 000 signifie # 000000 ou #ABC serait #AABBCC
Maintenant, pouvez-vous deviner quel est le nombre CC9? Ce nombre n'est pas nécessaire pour exprimer une couleur, mais il prouvera votre compréhension. Indice: En décimal, 267 signifie (2 * 100) + (6 * 10) + (7) ou (2 * 10 * 10) + (6 * 10) + (7).
3072 + 192 + 9 = 3273
Dans une notation hexadécimale à six chiffres, les chiffres appariés indiquent les composants rouge, vert et bleu du système RVB. Par exemple, #0000FF
a 0 pour le rouge, 0 pour le vert et FF
(qui est 15 × 16 + 15 = 255 en décimal), c’est-à-dire le maximum, pour le bleu (dans le sens qu’il a en RVB).
Dans la notation à trois chiffres, chaque chiffre est doublé et le résultat est interprété comme ci-dessus. Par exemple, #00F
signifie #0000FF
.
Référence faisant autorité: 4.3.6 Couleurs en CSS 2.1 (le plus récent Module de valeurs et unités CSS niveau 3 cite simplement CSS 2.1 pour cette définition; il existe des extensions du concept de couleur CSS, mais elles ne le sont pas. affecter ces questions).
Les couleurs RVB et CMJN sont des systèmes de couleurs différents. il n'y a pas de formule de conversion générale qui convertit entre eux.
Le code HEX représente trois octets, un pour chacune des couleurs RVB dans cet ordre.
FF0000 est l'intensité RED complète, 00FF00 est l'intensité GREEN, 0000FF est l'intensité BLUE
8040FF correspond à 128 ROUGE, 64 VERT et 255 bleu
Vous pouvez également écrire un court formulaire dans lequel vous ne spécifiez pas les 4 bits de poids faible de chaque octet, tel que FFF pour tout le blanc, F00 pour le plein rouge, 00f pour le plein bleu
Selon http://quashnick.net/geek_stuff/HEX2DEC.html
Une valeur de couleur hexadécimale représente la couleur bleu rouge vert (chaque Utilise 1 octet) . RGB a une valeur décimale, par exemple RVB (255, 255, 255) mais le code de couleur Hex est au format hexadécimal #FFFFFF -> (R) FF- (G) FF- (B) FF
Les numéros HEX sont composés des chiffres 0 à 9 comme DEC mais ajoute également UN F. Donc, en comptant dans HEX: HEX 0 1 2 3 4 5 6 7 8 9 A B C D E F
DEC 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Voici un numéro HEX: 1E5DF
Pour convertir cela en un DEC, nous devons définir la base de notre pouvoir une fonction. Puisque HEX est basé sur 16 chiffres différents [0-9A-F], notre base a 16 ans.
Pour convertir de HEX à DEC, procédez comme suit: Nous savons que F = 15 in DEC nous utilisons donc cette formule (15 * 16 ^ 0) = 15
Nous savons que D = 13 in DEC nous utilisons donc cette formule (13 * 16 ^ 1) = 208
Nous savons que 5 = 5 in DEC nous utilisons donc cette formule (5 * 16 ^ 2) = 1280
Nous savons que E = 14 in DEC nous utilisons donc cette formule (14 * 16 ^ 3) = 57344
Nous savons que 1 = 1 in DEC nous utilisons donc cette formule (1 * 16 ^ 4) = 65536Maintenant nous additionnons tous les nombres pour obtenir le numéro DEC pour HEX numéro 1E5DF:
15 + 208 + 1280 + 57344 + 65536 = 124383Donc, notre réponse est HEX 1E5DF = DEC 124383
En savoir plus sur: http://quashnick.net/geek_stuff/HEX2DEC.html
En savoir plus sur les couleurs à l’adresse: http://www.w3schools.com/html/html_colors.asp