You can changed the look of this site from anywhere you see a list-box like the one at the top of this page.
There's a nice example under "Kies je eigen style" at Alles of Niets".
The layout is controlled by Cascading Style Sheets (CSS). When you click on one of the options in the list-box, your browser reloads the page using a different stylesheet. Some of the stylesheets are my own, some are modified from examples by Microsoft and some of them are called up from the W3 server. No browser yet deals with stylesheets perfectly, and they all screw them up in different ways, so W3 checks which browser you're using and makes sure it sends you a version of its stylesheet that will definitely look nice. But it's a bit slow sometimes.
These pages are written in standard, old-fashioned HTML. That means without specifying sizes or colours of fonts, margins, background colours or any of that fancy stuff. The biggest heading is <H1>. The second-biggest heading is <H2>. Blockquotes are <BLOCKQUOTE>. Et cetera.
All the stuff about fonts, colours, margins, etc. is set out in Cascading Style Sheets (CSS). These wonderful things allow you to specify all the layout and formatting from a separate file. To pick a different style using CSS, all you need to do is change a single line in the head of the document. For example, to call up the style sheet edostyle.css, which lives in the directory scripts at http://edochan.com/css/edostyle.css, I write:
<LINK REL=STYLESHEET HREF="http://edochan.com/css/edostyle.css" TYPE="text/css">
document.write("something onto a web-page after it's loaded")
So you can write the line that changes the stylesheet like this:
document.write('<LINK REL=STYLESHEET HREF="http://edochan.com/css/edostyle.css" TYPE="text/css">');
There's just one little problem. The CSS needs to be called up from the head of the webpage, before the rest of it loads. So once you've chosen a layout, the page needs to re-load before it takes effect. But normal web-pages are "stateless". Every time you re-load, you start again from scratch. They forget what they were just doing.
The code is in style.js. Once this has been loaded in the head of the page, the form is written onto the page using styleform.js.