When Microsoft's IE7 came along (as distinct from the excellent IE7 JavaScript patch by Dean Edwards, used to force Internet Explorer to grow up a bit), I had the option of making a few tweaks to make the site work in the new browser, or start again from scratch. Like a fool, I started again.

The reason for this was that I'd finally found a good way of putting in some improvements:

  • The XHTML source of the pages now has the content of the page first and then the navigational elements. This means that people reading the site on a text browser like Lynx, or on a small screen device, don't have to wade through a list of links each time they open a page.
  • The layout now uses only one semantically redundant wrapper instead of two. Futhermore, the wrapper contains entire contents of the page, just beneath the body element, which means a) the code looks a lot cleaner, and b) geeks can use the wrapper as a hook for their own user stylesheets.
  • I have separated out colour schemes and special layout styles into their own stylesheets, which should make adding new mini-site themes much easier.
  • The site now has a maximum width, so it is not too uncomfortable to read on a big monitor.
  • The Wedding mini-site now only uses the excellent IE7 JavaScript patch to deal with PNG transparency, which makes the user experience more comfortable when viewing with IE6 on a narrowband connection.
  • The sidebar used to use a crazy system of divs and hidden bullets to simulate an unordered list when the stylesheets were turned off. It now uses actual unordered list (ul) tags. A hyphen is used for the sub-links in the sidebar; users of Good browsers get these hyphens inserted using stylesheet generated content, while Internet Explorer users get a faked version using pictures.
  • I've relented on the matter of links and reinstated the underlines. The boldface effect was, I now see, confusing and distracting.
  • The small screen style is a bit cleaner and more pleasant to use now.

The site was written by hand using HTML-Kit and then converted so it can be generated using PHP and MySQL. As the ISP doesn't support either, though, I'm currently generating the pages on my local machine and uploading static pages to the server, using a technique based on one by Loris Tissino.