Authoring   HTML Basics
Background Color

<body bgcolor=?> sets the background color

To your HTML file, you are a god. And the background of the page is the firmament. It can be midnight black or forest green, depending on your whim.

The background color is specified within the <body> tag at the beginning of your document. So, if you write in your HTML doc

    <body bgcolor=yellow>

You will create with great efficacy a yellow background.

"So," you may be thinking, "which colors can I use? If I type:

    <body bgcolor=periwinkle>
"will the browser know I'm looking for a light bluish gray?" The short answer is: No. Only a limited number of colors can be specified by name (periwinkle isn't one of them), and different browsers recognize different sets of colors. So if you want to be precise about your background (and I know you do), you'll want to replace the name of the color, with a hexadecimal code. So your HTML would look something like this:
    <body bgcolor=#ffffff>

Notice all those "f"s in the code? Well, that's how one says "white" in hexadecimal. If you'd like to know how to calculate that number, tough luck.

No, no. Just kidding. The "ffffff" represents the RGB value of white, translated into hexadecimal ... stay with me.... Any color that can be displayed on a monitor can be described by its RGB value - its relative amounts of red, green, and blue (each of which is expressed as a two-digit number, such as 51 or 14 or 00).

In order for a Web browser to understand the RGB values, they must each be translated into a hexadecimal (or base-16) number. Then the resulting two-digit hexadecimal ("hex" for short) numbers are strung together into a single six-digit code. So in the example above, the first two "f"s stand for the red value, the next two stand for green, and the last two for blue.

Now, if you don't want to bother with calculating those numbers, you can just consult our color chart.

But if you're a real do-it-yourselfer, you'll probably want to do the calculations yourself. So grab your abacus for this sexy/hexy sidetrack:

Take this lovely sea green with the RGB values R=51, G=219, B=153.

To translate this into hexadecimal, you should first take the value of Red - in this case, 51 - and divide it by 16. The balance is 3.1875. The integer, 3, will be the first number in the hexadecimal formula. The remainder (0.1875) should be multiplied by 16, which also results in the number 3. So, 51 translates to 33 in hex.

But sometimes the numbers don't work out as evenly; often you'll get integers and remainders that translate to 11 or 14, for instance. And in those cases, we translate the two-digit number into a single letter (that's where all the d's and f's come in), where 10=A, 11=B, 12=C, 13=D, 14=E, and 15=F. This becomes relevant to our lovely sea green when we calculate the hexadecimal equivalent of its Green value, which is 219. When we divide it by 16, we get 13.69. We translate 13 to D, and then multiply the remainder - 0.69 - by 16, and get 11, which equals B.

Repeat this formula for the Blue value, and then string them together (you should get 33DB99). Soon, you'll be speaking fluent Hex. Hence, you may now go to your dinner party and bore the pants off anyone who'll give you the time of day, by expressing their street address hexadecimally. You're welcome.