Okay, found a couple of solutions.
This is my attempt:
http://www.southeringtons.co.uk/three
#content is floated left and #navigation is positioned absolutely.
The footer will appear either at the bottom of the browser window or the bottom of #content (good), but if #navigation is taller than #content, #navigation will extend below the footer (bad).
I found another technique here:
http://www.ejeliot.com/samples/equal-he ... ple-2.html
Which I've tried here:
http://www.southeringtons.co.uk/four
The footer won't stick to the bottom (I can live with that), but #navigation won't extend below the footer (good).
Designing web pages should be a lot easier than this.