digit hex color code

I've been using 3-digit hex color values in CSS for a long time: #fff , #999 , #069 , etc. I can see how the repeating letters/numbers are merged to create a 3-digit hex color code, but I don't fully understand the pattern to be able to write a converter in PHP. Is there documentation for this?

Edit: Oh, perhaps my question wasn't clear. I need to know how some of the 6-digit hex color values are converted to 3-digits. xxxxxx ( ffffff ) and xxyyzz ( 006699 ) – these are the only two patterns, correct?


To convert a 3-character hex code into a 6 character one, you need to repeat each character:

$hex = '#fff';
$hex6 = '#' . $hex[1] . $hex[1] . $hex[2] . $hex[2] . $hex[3] . $hex[3];

If you want to convert it to decimal you can use the hexdec function


3 digit CSS code is short for 6 digits": #06a; is #0066aa;
Each two digits represent a number from 0 to 255.
Converting these values to hex and back is all you need.


#f0f is expanded to #ff00ff so basically you just need to calculate the value and the value times 16 for each character, eg:

#f98 : f = 15 => red = 15 + 15*16 = 255 etc.

链接地址: http://www.djcxy.com/p/87812.html

上一篇: 在文本上透明

下一篇: 十六进制颜色代码