Building a static website

Published and updated date of webpage. 17-NOV-2025, updated 10-DEC-2025

Published posts

Building a static website blog post series. Look at the first blog post or later on this page for background on this project.

Background and overview

Amazingly, I first registered the domain (saxbynet.com) on which this site is hosted, way back in 2002 and have had a personal website at that address, in one form or another, from around that time. However, I have not tended to regularly update it most of the time and it has never really been properly designed. This is now something I want to put right, especially as I do have the time to do so and have made some efforts on and off over the years.

Therefore, recently I took the decision to imagine designing my personal website from scratch and documenting the process of doing that through a series of blog posts. It is not entirely a clean sheet of paper, in the sense that I have taken some ideas from what I have done already, but I'm now trying to approach things in a more focused and logical way.

Why am I doing it this way?

There are of course plenty of static website generators and a new wave of AI-based site builders, so it's worth exploring why I'm doing it "the hard way".

If this were some kind of professional or commercial venture, it is highly likely that I would use one of the many services available to create it, but this is just a personal project and by building it myself, I'm going to learn a lot more than I would by using some other approach. It is also going to take lot longer, but that's fine, because it's all part of what I'm trying to achieve. DIY is the entire point of the exercise.

How are these blog posts organised?

One thing that is important to understand is that I am definitely building the ship while it's sailing. That means that I'm doing my best to make each separate blog post reflect the situation at the time of writing. For example, each post has its own separate CSS file, rather than a central one that I change over time. This allows me to make changes without affecting the existing posts, which gives a much better idea of how things are evolving as I try things out. Naturally, once I am finally in a position to have a design that I am happy with, future articles would then make use of what I've learned and I would have a central CSS file and icon set and so on.

I'm also intending to avoid making big updates to published blog posts. That isn't a strict rule, as there may be some circumstances where that is unavoidable, but it is once again aimed at trying to leave things largely looking as they did when I originally wrote to that particular post. Having said that, in the majority of cases, when I add a new blog post, I do go back to the previous one and update it to add a link to the latest post.

Note that this particular page is an exception, because clearly I will need to add links to the latest articles as they are published. I will also continue to update the CSS associated with this page.

Other considerations

List of resources

The following is a table of web resources and references that I have used during my work on this series of blog posts. I've added a short description in a few cases, where I feel that's necessary. Otherwise, the page title itself should give an indication of the subject matter it contains. I have attempted to put them in a vague order, grouping together articles on similar subjects.

Generally useful reference websites

Reference Description
MDN – Mozilla Developer Network homepage From the developers of Firefox: Documenting CSS, HTML, and JavaScript, since 2005.
W3Schools homepage Comprehensive tutorial and reference for Web technologies.
CSS-Tricks homepage

HTML and CSS guides and references

Some resources that cover everything from descriptions of HTML elements, through to explanations of CSS units.

Reference Description
HTML & CSS Is Hard Personally, I think this is one of the best HTML and CSS tutorial websites I have found. Unfortunately, it does not appear to have ever been updated since it was first written and is now out of date to some extent (there is no CSS Grid tutorial for example). However, it remains a very solid introduction nonetheless.
HTML Element Reference W3Schools HTML reference
HTML Semantic Elements
Headings and sections Using these to organise webpages.
How to Keep Up With New CSS Features
The box model MDN coverage of the CSS box model.
Mastering margin collapsing
CSS logical properties and values A listing of CSS logical properties.
Inheriting box-sizing Probably Slightly Better Best-Practice Most interesting for the informative comments.
CSS Unit Guide: CSS em, rem, vh, vw, and more, Explained
CSS Length Explained The vagaries of physical and CSS measurements, DPI and so on.
Sizing items in CSS Description of such concepts as natural, intrinsic and extrinsic sizes.
Using CSS custom properties (variables)
Cascade layers
Default styles for h1 elements are changing
<kbd>: The Keyboard Input element Includes some interesting formatting advice for keyboard shortcuts documentation.
<base>: The Document Base URL element
<samp>: The Sample Output element
<var>: The Variable element

HTML and CSS styling advice for certain specific scenarios

This covers some advice on styling such things as HTML tables, tables of contents and navigation bars.

Reference Description
CSS Navigation Bars Some methods to create these in HTML and CSS.
Using & Styling the Details Element
20 Simple Ways to Style the HTML details Element
Table of Contents: The Ultimate Design Guide
A Perfect Table of Contents With HTML + CSS
PrintCSS: Table of Contents Table of contents for a printed document in CSS, including page numbers.
Back-to-Top Button Design Guidelines
Styling tables
10 Ways to Hide Elements in CSS

Web Typography

Reference Description
Web Typography: The Complete Guide for Designers
Web Typography: Establishing a Strong Typographic System
Mastering Typography In Logo Design
What is typography? Your ultimate guide to fonts, styles and design impact
The Responsive Website Font Size Guidelines Some recommendations for specific font sizes for mobile and desktop.
What Is The Best Font Size For The Web?
Serif vs sans serif: choose the best font for your project
100% Responsive Typography System using a Modular Scale
A complete collection of web safe CSS font stacks.
24 best fonts for websites
The 23 Best Web-Safe HTML & CSS Fonts
CSS Web Safe Fonts W3Schools article on the subject.
Leveraging System Fonts on the Web
System Font Stack
OS Specific Fonts in CSS
Using UI System Fonts In Web Design: A Quick Practical Guide
Fonts in HTML emails
Free Font Alternatives: The Ultimate Guide

CSS layout (overviews, flexbox and grid)

Reference Description
Layout An overview of web page layout techniques.
CSS layout An MDN overview of available techniques for Web page layout using CSS.
Challenge: Fundamental layout comprehension A series of exercises to help test understanding of CSS layout techniques.
Flexbox The web.dev guide to CSS flexbox.
CSS Flexbox Layout Guide CSS-Tricks website detailed guide to CSS flexbox. Includes a handy printable reference.
What Happens When You Create A Flexbox Flex Container?
Grid The web.dev guide to CSS Grid.
1-Line Layouts – 10 Modern CSS layout and sizing techniques that highlight just how robust and impactful a single-line of styling code can be. Small snippets of CSS, delivering significant outcomes.
Layout patterns How to achieve a number of common layout patterns using CSS.
When to use Flexbox and when to use CSS Grid
Flexbox Froggy A series of animated challenges, to help learning CSS flexbox.
CSS Grid Layout W3Schools guide to CSS Grid.
CSS grid layout MDN guide to CSS Grid layout.
CSS Grid Layout Guide CSS-Tricks website to Grid layout.
A Beginner's Guide to CSS Grid Layout
CSS Grid Handbook – Complete Guide to Grid Containers and Grid Items
An Interactive Guide to CSS Grid A nicely written introductory tutorial for CSS grid.
Brand New Layouts with CSS Subgrid

Responsive design

This includes such things as media queries and various approaches to responsive image presentation. There is of course plenty of overlap with other subjects.

Reference Description
Learn Responsive Design The web.dev responsive design guide.
Flexible layouts without media queries
Build fast, responsive sites with Bootstrap
Using CSS breakpoints for fluid, future-proof layouts
Using media queries MDN guide to using media queries.
CSS Media Queries Guide
Beyond CSS Media Queries Summer approaches to responsive design without having to use media queries.
HTML Responsive Images Guide The CSS-Tricks website guide to responsive images.
Using responsive images in HTML MDN guide to responsive images.
Responsive images Direct link to the responsive images section of the web.dev responsive design guide.
When Responsive Images Get Ugly

Image file formats for the web

Although this can be seen as being part of responsive images, I'm listing advice on this in a separate section, because it is talking about file formats, rather than how to present the images.

Reference Description
Image file type and format guide Comparison of common image file formats (for example JPEG and PNG) for the use on webpages.
How to Choose the Best Image File Format for Your Website
Converting Images to AVIF on Linux, Including JPG, PNG, and WebP Formats
Smart WebP, JPEG and PNG compression Allows upload of images, which are then analysed and compressed (has limited free tier).

Miscellaneous resources

Reference Description
Schema.org As per the description on the website: Schema.org is a collaborative, community activity with a mission to create, maintain, and promote schemas for structured data on the Internet, on web pages, in email messages, and beyond.
What are browser developer tools? Accessing developer tools within browsers.
How to Favicon in 2025: Three files that fit most needs
iOS Resolution Display properties of every iPhone, iPad, iPod touch and Apple Watch Apple ever made.
You don't know Bash: An introduction to Bash arrays
Generating an HTML Table Using Shell Script
My CSS file won't update on Safari Browser I have experienced this very same issue.
Simplify Syntax Highlighting with highlight.js A way of displaying syntax highlighting for code snippets included in a web page.
Handling whitespace
DevTools now display white space text nodes in the DOM inspector