Tools to Convert .PNG Images to Base64 Text String for CSS

Perhaps I’ve not been paying attention to the newer features in the CSS 3 specification. This tip was a real eye-opener for me. Did you know that we can now translate an image made in the .PNG format into a VERY long string of text characters ? Then we can insert this VERY long string of text directly into our CSS or HTML pages without worrying about blitzing our other code !

All of these ideas came from Nathan Smith, author of formalize.me, a stunning approach to make our web forms look (almost) identical on a variety of browsers and 960.gs – a brill approach to layout web pages for designers and webpage authors.

One nice tool to do this translation is available here :  http://webcodertools.com/imagetobase64converter/Createand with this tool, we can choose a .png image on our system to convert. You’ll see a dialogue panel similar to this.

Create Base64 Text String from .PNG Image

Create Base64 Text String from .PNG Image

and from this panel you can select an image from your local file system.

.

Here is a sample of an icon.png image from my own system. It looks like this :

sample icon.png

sample icon.png

.

.

When converted into Base64 notation, we have this :

Base64 Translation of .PNG Image

Base64 Translation of .PNG Image

Now choose either translation, highlite the text, copy that to your system clipboard and then paste into your target document. Choose the img tag version to paste directly into your html page. Choose the CSS version to paste into your CSS3 document. Since i’m doing some testing on google’s app engine facilities, there was a need for a mockup of several screens, so we downloaded a local copy of the formalizer example noted above. Then copied the base64 encoded img src as a repeating background which looks like this :

Sample that uses base64 encoded image as background.

Sample that uses base64 encoded image as a repeating background.

Try it out, this is cool !

Just found this wiki link to explain data/uri purposes and further examples: http://en.wikipedia.org/wiki/Data_URI_scheme 

FORWARD vs REDIRECT logic in Web Services

A web services controller, implemented as an HttpServlet, may perform either a forward or a redirect operation at the end of processing a request. To understand the difference between these two cases, particularly how a browser reloads web pages:

Forward

  • a forward is performed internally by the servlet
  • the browser is completely unaware that it has taken place, so its original URL remains intact
  • a browser reload of that page will only repeat the original request, using the original URL

Redirect

  • a redirect is a two step process, where the web application instructs the browser to fetch a second URL, which differs from the original
  • when a browser reloads the second URL, it will not repeat the original URL request, but it will fetch the second URL
  • redirect is slower than a forward, as it requires two browser requests, not one
  • objects placed in the original request scope are lost and therefore not available to the second request

In general, use a forward command if the browser operation is repeatable and will return the same page; otherwise, use a redirect command. Therefore, if the user operation edits an item in the datastore, use a redirect, not a forward. This will avoid the possibility of duplicating a database transaction.

More explicitly (in terms of common SQL operations) :

  • for SELECT operations, use a forward
  • for INSERT, UPDATE, or DELETE operations, use a redirect

In HTML, a <FORM> tag can either  GET or POST its data. Here, a GET command corresponds to a SELECT-then-forward, and a POSTcorresponds to an edit-then-redirect.

Forms for the input of search criteria should use GET, while forms to edit database records should use POST.

Backup / Export Bookmarks from Firefox 12

Click any screenshot pix below to enlarge.

Sometimes if testing web services for browser compatibility, my Apple Macbook 10.6.8 is fine when testing with Safari, Opera and Google Chrome.

IBM System i menu.

Mouseless menu.

Lately, i’ve found that my old stand-by browser was always my favorite, step forward Firefox. Just loaded version 12 which looks the same as previous versions. I have a shed load of history and old bookmarks in my Firefox browser history and bookmark sections. These are useful in a java tool I am writing called a ‘mouseless menu’ system. Gonna put it up on GitHub as Open Source so it might be useful to some old IBM dogs that were familiar with the old green screen menu systems of IBM System i, AS/400′s,S/38′s, S/36′s and IBM System 3′s. Peek at pix right to see what these old IBM menus looked like. Green text on black background was all the rage back in the good old days !

So i wanted to find out how to export and save all those URL’s. After much searching, found this: http://support.mozilla.org/en-US/kb/Backing-up-restoring-bookmarks. It says :


Backup and restoring

Manual backup

  1. On the menu bar, click Bookmarks and select Show All Bookmarks to open the Library window.

  2. In the Library window, click the e3f62ffc25d52f883aa490cc65d71e2d-1252097598-804-1.png Import and Backup button and then select Backup….
  3. In the Bookmarks backup filename window that opens, choose a location to save the file, which is named bookmarks-”date”.json by default. The desktop is usually a good spot, but any place that is easy to remember will work.
  4. Save the bookmarks json file. The Bookmarks backup filename window will close and you can close the Library window.

Here are some screenshots :

To work with bookmarks, click Bookmarks in the menu. this should offer you a sub menu like this. Then click Show All Bookmarks to follow the trail to the next step.

See that button top left that looks like a Star ? Click that to open a sub-menu with options. Because the tool i’m writing can consume HTML, i clicked the Export Bookmarks To HTML choice.

Here you can see the Save As menu from my Apple.Typically, i export and import lots of stuff to my downloads folder. I know i can go back later and delete those items as they are typically short-lived. The Firefox export feature suggests a filename of bookmarks.html and as that is ok with me i click SAVE button, then run my tools over the exported HTML file.

Another alternative is to do a backup of all your bookmarks. Follow the same steps as above,but click the BACKUP menu item.

A Save As menu dialog opens with a suggested filename of the word bookmarks plus the date of this backup. Note that you can change the filename and folder locations to suit your work habits. Also note that the format of text within this file is JSON which is convenient for almost all browsers to work with. I have not tried to export a Firefox set of bookmarks and import them into another browser. I’ll leave that exercise for another sunday :}


I never did find out how to export the history of visited websites. Perhaps i’ll leave that for yet another sunday ! Oh, No I didn’t – just read that we cannot export browsing history. Aw, shucks, ma !

Here are short bits of the exported bookmarks.html and json versions so you can see how complex these formats can be…

bookmarks-2012-04-29.json

bookmarks.html

bookmarks.html

Firefox 10.0.4 for iMac PPC’s G3/G4/G5

Nice to know someone still cares about us. The  dudes at Ten Four Fox Development bring us another incarnation of the Mozilla creature we all know and love as Firefox. Thanx to their efforts we have a version of F/F 10.0.4 that will run nicely on our older Apple Mac’s with the PPC chipset.

Their release notes can be found here: http://code.google.com/p/tenfourfox/wiki/ReleaseNotes1004

and if you need the download, look here: http://www.floodgap.com/software/tenfourfox/ then go to the bottom of this link and pick a version that matches your chipset: G3, G4 or G5.

Huawei E160 3G Dongle

While looking for ways to connect to the internet while on the move, i remembered that i had an old 3G dongle i bought some time ago. It was for the O2 network in the UK. When plugged in, the dongle has logic within it to self-install the driver and connection manager needed by my Apple MacBook. This setup my system to be able to handle any connect that can be gained from the dongle.

Part two of the problem is that the dongle will only ‘talk’ on certain frequencies and at different speeds, or rates of transmissions. OK, that means this dongle will only talk to some networks and not others. Still, the dongle is technically able to converse with a variety of networks. It is down to the dongle providers as to which networks the dongle will ‘talk’ to. My dongle is sold by the O2 network and as you would expect, it will only converse with that network. This is a form of vendor lock-in where the vendor can fleece you for extra dosh at rates that may/maynot be the lowest. So this part of the problem is down to the hardware and something that’s set at the factory and which we cannot change. Buy another dongle if you want to use different networks. BUT there is a SIM card inside the dongle that governs which networks can be seen. You can ‘break’ out of this straight-jacket by ‘unlocking’ your SIM card in the same way we do for some mobile phones. Look at http://www.unlocked-dongle.co.uk/Unlock-O2-3G-Modems-and-Dongles.html and their other pages to see which networks you can escape from.

Part three of the problem, assuming you have loaded the connection manager, the hardware driver and you know the dongle is working, is to gain access to the network your dongle talks to. This means you need to buy a plan from the network provider. For a payment to them, they will allow your dongle to send data up to their satellite and bring data down to your dongle from their satellite connection. Speeds vary and there is a noticable delay when using the 3G dongle as each email, mouse-click or browse on your system requires the request to go up to the satellite, down to their base station, into the internet backbone, to the destination, and any reply would arrive in your system via the same route. All this too-ing and fro-ing takes time, hence the slower speeds of service.

Newer 3G dongles have transmission rates approaching 20MB/second. This rate is possible but may bankrupt your account rather quickly unless you have an unlimited plan.

My thanks to Sam Moffatt at : http://pasamio.com/2011/07/22/getting-your-huawei-modem-working-with-mac-os-x-lion/. If you go to the bother, you will be able to see folders like this :

huawei_universal_425_05.pkg

huawei_universal_425_05.pkg

Following his directions, i was able to setup my Macbook to use my old O2 dongle. As i am in France, i will need to visit the local Orange France Telecom office to buy a plan. More anon.

To get around problems with this WordPress blog, i have uploaded the zip file you need here but i had to change the end of the file name to add .JPG at the end of it. If you choose to download this zip file, you must remove the .jpg from the end of the filename so that the file will be seen as a typical .ZIP file and can be opened/installed as normal.

Click here to download 3UK Connection Zip File http://ask3.three.co.uk/mbbdocs/drivers/3UK_27_20110519_r93.zip

Also if you have an Apple, here is a great link to understanding mac apps, packages and bundles : http://www.mactipsandtricks.com/articles/Wiley_HT_appBundles.lasso

HTML Color Codes, Names and Hex Values

Put this here just for future reference. It is a list of the lesser known colour names we can use in our CSS styles by name rather than by the hex code. It does not show well here with the actual color. Suspect this is due to the style of this wordpress theme. Needs more research.

Aliceblue
F0F8FF
Antiquewhite
FAEBD7
Aqua
00FFFF
Aquamarine
7FFFD4
Azure
F0FFFF
Beige
F5F5DC
Bisque
FFE4C4
Black
000000
Blanchedalmond
FFEBCD
Blue
0000FF
Blueviolet
8A2BE2
Brown
A52A2A
Burlywood
DEB887
Cadetblue
5F9EA0
Chartreuse
7FFF00
Chocolate
D2691E
Coral
FF7F50
Cornflowerblue
6495ED
Cornsilk
FFF8DC
Crimson
DC143C
Cyan
00FFFF
Darkblue
00008B
Darkcyan
008B8B
Darkgoldenrod
B8860B
Darkgray
A9A9A9
Darkgreen
006400
Darkkhaki
BDB76B
Darkmagenta
8B008B
Darkolivegreen
556B2F
Darkorange
FF8C00
Darkorchid
9932CC
Darkred
8B0000
Darksalmon
E9967A
Darkseagreen
8FBC8F
Darkslateblue
483D8B
Darkslategray
2F4F4F
Darkturquoise
00CED1
Darkviolet
9400D3
deeppink
FF1493
Deepskyblue
00BFFF
Dimgray
696969
Dodgerblue
1E90FF
Firebrick
B22222
Floralwhite
FFFAF0
Forestgreen
228B22
Fuchsia
FF00FF
Gainsboro
DCDCDC
Ghostwhite
F8F8FF
Gold
FFD700
Goldenrod
DAA520
Gray
808080
Green
008000
Greenyellow
ADFF2F
Honeydew
F0FFF0
Hotpink
FF69B4
Indianred
CD5C5C
Indigo
4B0082
Ivory
FFFFF0
Khaki
F0E68C
Lavender
E6E6FA
Lavenderblush
FFF0F5
Lawngreen
7CFC00
Lemonchiffon
FFFACD
Lightblue
ADD8E6
Lightcoral
F08080
Lightcyan
E0FFFF
Lightgoldenrodyellow
FAFAD2
Lightgreen
90EE90
Lightgrey
D3D3D3
Lightpink
FFB6C1
Lightsalmon
FFA07A
Lightseagreen
20B2AA
Lightskyblue
87CEFA
Lightslategray
778899
Lightsteelblue
B0C4DE
Lightyellow
FFFFE0
Lime
00FF00
Limegreen
32CD32
Linen
FAF0E6
Magenta
FF00FF
Maroon
800000
Mediumauqamarine
66CDAA
Mediumblue
0000CD
Mediumorchid
BA55D3
Mediumpurple
9370D8
Mediumseagreen
3CB371
Mediumslateblue
7B68EE
Mediumspringgreen
00FA9A
Mediumturquoise
48D1CC
Mediumvioletred
C71585
Midnightblue
191970
Mintcream
F5FFFA
Mistyrose
FFE4E1
Moccasin
FFE4B5
Navajowhite
FFDEAD
Navy
000080
Oldlace
FDF5E6
Olive
808000
Olivedrab
688E23
Orange
FFA500
Orangered
FF4500
Orchid
DA70D6
Palegoldenrod
EEE8AA
Palegreen
98FB98
Paleturquoise
AFEEEE
Palevioletred
D87093
Papayawhip
FFEFD5
Peachpuff
FFDAB9
Peru
CD85
Pink
FFC0CB
Plum
DDA0DD
Powderblue
B0E0E6
Purple
800080
Red
FF0000
Rosybrown
BC8F8F
Royalblue
4169E1
Saddlebrown
8B4513
Salmon
FA8072
Sandybrown
F4A460
Seagreen
2E8B57
Seashell
FFF5EE
Sienna
A0522D
Silver
C0C0C0
Skyblue
87CEEB
Slateblue
6A5ACD
Slategray
708090
Snow
FFFAFA
Springgreen
00FF7F
Steelblue
4682B4
Tan
D2B48C
Teal
008080
Thistle
D8BFD8
Tomato
FF6347
Turquoise
40E0D0
Violet
EE82EE
Wheat
F5DEB3
White
FFFFFF
Whitesmoke
F5F5F5
Yellow
FFFF00
YellowGreen
9ACD32

<table>
<tr>
<td align="center" bgcolor="aliceblue" width="40px">Aliceblue<br />F0F8FF</td>
<td align="center" bgcolor="antiquewhite" width="40px">Antiquewhite<br />FAEBD7</td>
<td align="center" bgcolor="aqua" width="40px">Aqua<br />00FFFF</td>
</tr>

<tr>
<td align="center" bgcolor="aquamarine" width="40px">Aquamarine<br />7FFFD4</td>
<td align="center" bgcolor="azure" width="40px">Azure<br />F0FFFF</td>
<td align="center" bgcolor="beige" width="40px">Beige<br />F5F5DC</td>
</tr>

<tr>
<td align="center" bgcolor="bisque" width="40px">Bisque<br />FFE4C4</td>
<td align="center" bgcolor="black" width="40px"><font color="FFFFFF">Black<br />000000</font></td>
<td align="center" bgcolor="blanchedalmond" width="40px">Blanchedalmond<br />FFEBCD</td>
</tr>

<tr>
<td align="center" bgcolor="blue" width="40px">Blue<br />0000FF</td>
<td align="center" bgcolor="bluevoilet" width="40px">Blueviolet<br />8A2BE2</td>
<td align="center" bgcolor="brown" width="40px">Brown<br />A52A2A</td>
</tr>

<tr>
<td align="center" bgcolor="burlywood" width="40px">Burlywood<br />DEB887</td>
<td align="center" bgcolor="cadetblue" width="40px">Cadetblue<br />5F9EA0</td>
<td align="center" bgcolor="chartreuse" width="40px">Chartreuse<br />7FFF00</td>
</tr>

<tr>
<td align="center" bgcolor="chocolate" width="40px">Chocolate<br />D2691E</td>
<td align="center" bgcolor="coral" width="40px">Coral<br />FF7F50</td>
<td align="center" bgcolor="cornflowerblue" width="40px">Cornflowerblue<br />6495ED</td>
</tr>

<tr>
<td align="center" bgcolor="cornsilk" width="40px">Cornsilk<br />FFF8DC</td>
<td align="center" bgcolor="crimson" width="40px">Crimson<br />DC143C</td>
<td align="center" bgcolor="cyan" width="40px">Cyan<br />00FFFF</td>
</tr>

<tr>
<td align="center" bgcolor="darkblue" width="40px">Darkblue<br />00008B</td>
<td align="center" bgcolor="darkcyan" width="40px">Darkcyan<br />008B8B</td>
<td align="center" bgcolor="darkgoldenrod" width="40px">Darkgoldenrod<br />B8860B</td>
</tr>

<tr>
<td align="center" bgcolor="darkgray" width="40px">Darkgray<br />A9A9A9</td>
<td align="center" bgcolor="darkgreen" width="40px">Darkgreen<br />006400</td>
<td align="center" bgcolor="darkkhaki" width="40px">Darkkhaki<br />BDB76B</td>
</tr>

<tr>
<td align="center" bgcolor="darkmagenta" width="40px">Darkmagenta<br />8B008B</td>
<td align="center" bgcolor="darkolivegreen" width="40px">Darkolivegreen<br />556B2F</td>
<td align="center" bgcolor="darkorange" width="40px">Darkorange<br />FF8C00</td>
</tr>

<tr>
<td align="center" bgcolor="darkorchid" width="40px">Darkorchid<br />9932CC</td>
<td align="center" bgcolor="darkred" width="40px">Darkred<br />8B0000</td>
<td align="center" bgcolor="darksalmon" width="40px">Darksalmon<br />E9967A</td>
</tr>

<tr>
<td align="center" bgcolor="darkseagreen" width="40px">Darkseagreen<br />8FBC8F</td>
<td align="center" bgcolor="darkslateblue" width="40px">Darkslateblue<br />483D8B</td>
<td align="center" bgcolor="darkslategray" width="40px">Darkslategray<br />2F4F4F</td>
</tr>

<tr>
<td align="center" bgcolor="darkturquoise" width="40px">Darkturquoise<br />00CED1</td>
<td align="center" bgcolor="darkviolet" width="40px">Darkviolet<br />9400D3</td>
<td align="center" bgcolor="deeppink" width="40px">deeppink<br />FF1493</td>
</tr>

<tr>
<td align="center" bgcolor="deepskyblue" width="40px">Deepskyblue<br />00BFFF</td>
<td align="center" bgcolor="dimgray" width="40px">Dimgray<br />696969</td>
<td align="center" bgcolor="dodgerblue" width="40px">Dodgerblue<br />1E90FF</td>
</tr>

<tr>
<td align="center" bgcolor="firebrick" width="40px">Firebrick<br />B22222</td>
<td align="center" bgcolor="floralwhite" width="40px">Floralwhite<br />FFFAF0</td>
<td align="center" bgcolor="forestgreen" width="40px">Forestgreen<br />228B22</td>
</tr>

<tr>
<td align="center" bgcolor="fuchsia" width="40px">Fuchsia<br />FF00FF</td>
<td align="center" bgcolor="gainsboro" width="40px">Gainsboro<br />DCDCDC</td>
<td align="center" bgcolor="ghostwhite" width="40px">Ghostwhite<br />F8F8FF</td>
</tr>

<tr>
<td align="center" bgcolor="gold" width="40px">Gold<br />FFD700</td>
<td align="center" bgcolor="goldenrod" width="40px">Goldenrod<br />DAA520</td>
<td align="center" bgcolor="gray" width="40px">Gray<br />808080</td>
</tr>

<tr>
<td align="center" bgcolor="green" width="40px">Green<br />008000</td>
<td align="center" bgcolor="greenyellow" width="40px">Greenyellow<br />ADFF2F</td>
<td align="center" bgcolor="honeydew" width="40px">Honeydew<br />F0FFF0</td>
</tr>

<tr>
<td align="center" bgcolor="hotpink" width="40px">Hotpink<br />FF69B4</td>
<td align="center" bgcolor="indianred" width="40px">Indianred<br />CD5C5C</td>
<td align="center" bgcolor="indigo" width="40px">Indigo<br />4B0082</td>
</tr>

<tr>
<td align="center" bgcolor="ivory" width="40px">Ivory<br />FFFFF0</td>
<td align="center" bgcolor="khaki" width="40px">Khaki<br />F0E68C</td>
<td align="center" bgcolor="lavender" width="40px">Lavender<br />E6E6FA</td>
</tr>

<tr>
<td align="center" bgcolor="lavenderblush" width="40px">Lavenderblush<br />FFF0F5</td>
<td align="center" bgcolor="lawngreen" width="40px">Lawngreen<br />7CFC00</td>
<td align="center" bgcolor="lemonchiffon" width="40px">Lemonchiffon<br />FFFACD</td>
</tr>

<tr>
<td align="center" bgcolor="lightblue" width="40px">Lightblue<br />ADD8E6</td>
<td align="center" bgcolor="lightcoral" width="40px">Lightcoral<br />F08080</td>
<td align="center" bgcolor="lightcyan" width="40px">Lightcyan<br />E0FFFF</td>
</tr>

<tr>
<td align="center" bgcolor="lightgoldenrodyellow" width="40px">Lightgoldenrodyellow<br />FAFAD2</td>
<td align="center" bgcolor="lightgreen" width="40px">Lightgreen<br />90EE90</td>
<td align="center" bgcolor="lightgrey" width="40px">Lightgrey<br />D3D3D3</td>
</tr>

<tr>
<td align="center" bgcolor="lightpink" width="40px">Lightpink<br />FFB6C1</td>
<td align="center" bgcolor="lightsalmon" width="40px">Lightsalmon<br />FFA07A</td>
<td align="center" bgcolor="lightseagreen" width="40px">Lightseagreen<br />20B2AA</td>
</tr>

<tr>
<td align="center" bgcolor="lightskyblue" width="40px">Lightskyblue<br />87CEFA</td>
<td align="center" bgcolor="lightslategray" width="40px">Lightslategray<br />778899</td>
<td align="center" bgcolor="lightsteelblue" width="40px">Lightsteelblue<br />B0C4DE</td>
</tr>

<tr>
<td align="center" bgcolor="lightyellow" width="40px">Lightyellow<br />FFFFE0</td>
<td align="center" bgcolor="lime" width="40px">Lime<br />00FF00</td>
<td align="center" bgcolor="limegreen" width="40px">Limegreen<br />32CD32</td>
</tr>

<tr>
<td align="center" bgcolor="linen" width="40px">Linen<br />FAF0E6</td>
<td align="center" bgcolor="magenta" width="40px">Magenta<br />FF00FF</td>
<td align="center" bgcolor="maroon" width="40px">Maroon<br />800000</td>
</tr>

<tr>
<td align="center" bgcolor="mediumaquamarine" width="40px">Mediumauqamarine<br />66CDAA</td>
<td align="center" bgcolor="mediumblue" width="40px">Mediumblue<br />0000CD</td>
<td align="center" bgcolor="mediumorchid" width="40px">Mediumorchid<br />BA55D3</td>
</tr>

<tr>
<td align="center" bgcolor="mediumpurple" width="40px">Mediumpurple<br />9370D8</td>
<td align="center" bgcolor="mediumseagreen" width="40px">Mediumseagreen<br />3CB371</td>
<td align="center" bgcolor="mediumslateblue" width="40px">Mediumslateblue<br />7B68EE</td>
</tr>

<tr>
<td align="center" bgcolor="mediumspringgreen" width="40px">Mediumspringgreen<br />00FA9A</td>
<td align="center" bgcolor="mediumturquoise" width="40px">Mediumturquoise<br />48D1CC</td>
<td align="center" bgcolor="mediumvioletred" width="40px">Mediumvioletred<br />C71585</td>
</tr>

<tr>
<td align="center" bgcolor="midnightblue" width="40px">Midnightblue<br />191970</td>
<td align="center" bgcolor="mintcream" width="40px">Mintcream<br />F5FFFA</td>
<td align="center" bgcolor="mistyrose" width="40px">Mistyrose<br />FFE4E1</td>
</tr>

<tr>
<td align="center" bgcolor="moccasin" width="40px">Moccasin<br />FFE4B5</td>
<td align="center" bgcolor="navajowhite" width="40px">Navajowhite<br />FFDEAD</td>
<td align="center" bgcolor="navy" width="40px">Navy<br />000080</td>
</tr>

<tr>
<td align="center" bgcolor="oldlace" width="40px">Oldlace<br />FDF5E6</td>
<td align="center" bgcolor="olive" width="40px">Olive<br />808000</td>
<td align="center" bgcolor="olivedrab" width="40px">Olivedrab<br />688E23</td>
</tr>

<tr>
<td align="center" bgcolor="orange" width="40px">Orange<br />FFA500</td>
<td align="center" bgcolor="orangered" width="40px">Orangered<br />FF4500</td>
<td align="center" bgcolor="orchid" width="40px">Orchid<br />DA70D6</td>
</tr>

<tr>
<td align="center" bgcolor="palegoldenrod" width="40px">Palegoldenrod<br />EEE8AA</td>
<td align="center" bgcolor="palegreen" width="40px">Palegreen<br />98FB98</td>
<td align="center" bgcolor="paleturquoise" width="40px">Paleturquoise<br />AFEEEE</td>
</tr>

<tr>
<td align="center" bgcolor="palevioletred" width="40px">Palevioletred<br />D87093</td>
<td align="center" bgcolor="papayawhip" width="40px">Papayawhip<br />FFEFD5</td>
<td align="center" bgcolor="peachpuff" width="40px">Peachpuff<br />FFDAB9</td>
</tr>

<tr>
<td align="center" bgcolor="peru" width="40px">Peru<br />CD85</td>
<td align="center" bgcolor="pink" width="40px">Pink<br />FFC0CB</td>
<td align="center" bgcolor="plum" width="40px">Plum<br />DDA0DD</td>
</tr>

<tr>
<td align="center" bgcolor="powderblue" width="40px">Powderblue<br />B0E0E6</td>
<td align="center" bgcolor="purple" width="40px">Purple<br />800080</td>
<td align="center" bgcolor="red" width="40px">Red<br />FF0000</td>
</tr>

<tr>
<td align="center" bgcolor="rosybrown" width="40px">Rosybrown<br />BC8F8F</td>
<td align="center" bgcolor="royalblue" width="40px">Royalblue<br />4169E1</td>
<td align="center" bgcolor="saddlebrown" width="40px">Saddlebrown<br />8B4513</td>
</tr>

<tr>
<td align="center" bgcolor="salmon" width="40px">Salmon<br />FA8072</td>
<td align="center" bgcolor="sandybrown" width="40px">Sandybrown<br />F4A460</td>
<td align="center" bgcolor="seagreen" width="40px">Seagreen<br />2E8B57</td>
</tr>

<tr>
<td align="center" bgcolor="seashell" width="40px">Seashell<br />FFF5EE</td>
<td align="center" bgcolor="sienna" width="40px">Sienna<br />A0522D</td>
<td align="center" bgcolor="silver" width="40px">Silver<br />C0C0C0</td>
</tr>

<tr>
<td align="center" bgcolor="skyblue" width="40px">Skyblue<br />87CEEB</td>
<td align="center" bgcolor="slateblue" width="40px">Slateblue<br />6A5ACD</td>
<td align="center" bgcolor="slategray" width="40px">Slategray<br />708090</td>
</tr>

<tr>
<td align="center" bgcolor="snow" width="40px">Snow<br />FFFAFA</td>
<td align="center" bgcolor="springgreen" width="40px">Springgreen<br />00FF7F</td>
<td align="center" bgcolor="steelblue" width="40px">Steelblue<br />4682B4</td>
</tr>

<tr>
<td align="center" bgcolor="tan" width="40px">Tan<br />D2B48C</td>
<td align="center" bgcolor="teal" width="40px">Teal<br />008080</td>
<td align="center" bgcolor="thistle" width="40px">Thistle<br />D8BFD8</td>
</tr>

<tr>
<td align="center" bgcolor="tomato" width="40px">Tomato<br />FF6347</td>
<td align="center" bgcolor="turquoise" width="40px">Turquoise<br />40E0D0</td>
<td align="center" bgcolor="violet" width="40px">Violet<br />EE82EE</td>
</tr>

<tr>
<td align="center" bgcolor="wheat" width="40px">Wheat<br />F5DEB3</td>
<td align="center" bgcolor="white" width="40px">White<br />FFFFFF</td>
<td align="center" bgcolor="whitesmoke" width="40px">Whitesmoke<br />F5F5F5</td>
</tr>
<tr>
<td align="center" bgcolor="yellow" width="40px">Yellow<br />FFFF00</td>
<td align="center" bgcolor="yellowgreen" width="40px">YellowGreen<br />9ACD32</td>
</tr>
</table>