This site was created using Amaya, an open source HTML editor available from World Wide Web Consortium (W3C)'s website; it can be found here: Amaya. A graphics program was of course also needed, and I used a better text editor than the source code editor in Amaya.
Part of the purpose in creating this site was to test my ability to create a good looking website, which is XHTML 1.1 compliant, and based on a CSS2 compliant style sheet. I soon found, that a style sheet seemed not only to be preferable; it also seemed to be necessary to create some of the effects I wanted.
If you view the source of any of my pages, you will see that there are actually two style sheets; one for screen display, the other for printing. This allows me to use a dark background with light text on the screen, while the pages will still come out in crisp black text on white paper if they are printed out.
The two horizontal separator bars only figure like this in the source for
the pages:
<p class="separator"> </p>
The "separator" style defines a background image, repeating in the X direction,
which is only 28 pixel wide. The above isn't entirely correct, though. The top
separator bar also contains a hidden (non-clickable) link to trouble web
crawlers looking for e-mail addresses to send spam to.
The framing line around the menu to the left is a single background image, which is cut short by the last paragraph in the menu (that paragraph only contains a non-breaking space). Except for the framing line, that background image is transparent to allow the starscape background image to be seen behind the menu items. To prevent the first line of the menu from being on top of the upper line, there is a fully transparent image (a one pixel transparent gif "stretched" by defining the image size).
The layout placing the menu to the left is done using CSS, rather than a table. Tables should only be used for tabulated data, not for layout. This is both my personal opinion and the recommendation of W3C, though using tables for layout does not make a website non-compliant.
To ensure that the pages are indeed valid XHTML 1.1, I use W3C's HTML validator, and to ensure that the style sheets are valid CSS2, I use W3C's CSS validator.