Glad to hear it’s all ok. 
And, even if I had tried, the -5px would have raised no concerns with my noobiness, and even now, I have no idea why that caused the error.
In combination with the position:absolute property, bottom:-5px means, “put this element 5px below the bottom edge of the parent element”. So that’s why it was hiding a bit, and creating an extra 5px of space that would always be scrollable.
Even using the HTML tab (which I had never previously thought of doing) there are no warnings when I hover.
There should be no warnings because there is nothing technically wrong. The warnings are for errors in the JavaScript. All that was “wrong” was some bad styling! Computers don’t know what looks good or what doesn’t.
Why should the style property have used double quotes? I thought usage was entirely interchangable (unlike perl)?
Technically speaking, HTML attributes don’t need quotes at all unless they contain spaces. However, it is a convention (and “good practice”) to use double ones, because that is what is used in XML (and anything else causes errors in XML). Since HTML is a subset of SGML, which is XML-like, it makes sense to do so.
I have avoided using doctypes, since I figured that my GF gave me as much nagging as I needed. Nevertheless, at your urging I did add it (the strict version)
I suggest you read about Doctypes. This thread is a good place to start. The sticky The absence of one will put your document into quirks mode, which is unpredictable and renders the page using “wrong” rules. Adding a doctype puts browsers into “standards mode”.
it didn’t complain about anything, even the unclosed <p>.
What do you mean by “it” didn’t complain? This is where I suggest you put your HTML through the W3C validator. Technically speaking (again), the <p> element doesn’t need a closing tag. However, for consistency’s sake, readability and general robustness, it is recommendable to add one.
The HTML tab of firebug showed that the terminating </p> had been added anyway.
That is added only within Firebug. Firebug attempts to correct broken HTML or add missing ending tags. The HTML parser that actually turns HTML code into a web page does the same thing. Your visitors will still be receiving whatever HTML you have produced. Firebug only operates on your computer once the page has been downloaded!