<small> used to be a sort of typographical tag which was used to make
text small. It was always (I think) used inside a para or a heading or
some other element.
Yep. Note, however, that there was no definition for how small the text
would be. HTML5 is nominally more explicit: it says that the "suggested
rendering" corresponds to
small { font-size: smaller; }
which really leaves it to browsers decide, whereas CSS 2.1 says, in a
"sample" style sheet for HTML 4:
small { font-size: 0.83em; }
The morale is: set the font size, so that you will not have
*unnecessary* variation across browsers. Usually 0.83em, or maybe a
little larger, is OK, but this somewhat depends on the font you intend
to use.
Now in html5, despite what w3schools says (Differences Between HTML 4.01
and HTML5, NONE.)
Ignore w3schools here, and otherwise; see
http://w3fools.com
it has a semantic meaning of something like 'the small
print'.
Which isn't really semantic (i.e., relating to meaning) at all. It says
nothing about the meaning of the content. It just assigns a vague phrase
to the element. The explanation is more obscure than the thing it is
supposed to explain.
The sensible rule is simple: use <small> if you want something to appear
in smaller font than the surrounding text even when CSS is disabled, and
use CSS to set the specific font size proportion. It's really your
business *why* you want reduced font size, and the user won't see the
reason anyway, no matter what markup you use.
You can safely ignore "semantic" babble in this issue, as well as with
<i>, <b>, <u>, and some friends. Unless, of course, your pointy-haired
boss or your rich customer tells you to write "HTML5 conformant" pages.
(And even then, it is a matter of moral and honesty more than anything
else: how much can you lie and deceit and mislead when it really does
not hurt anyone and when trying to be honest at any cost could cost you
your mental health?)
For example, I use
<h1>The pragmatic guide to HTML: Principles<br>
<small>or<br>
The HTML Anarchist’s leaflet</small></h1>
at
http://www.cs.tut.fi/~jkorpela/pragmatic-html.html8
even though such usage might not match HTML5 "semantics" as of now (but
might do so tomorrow, or at some later point).
Does this mean I can use it on its own like:
<p>Some statements about something or other</p>
<small>disclaimers re the above</small>
Yes.
without wrapping it in a paragraph?
Yes. But you might wish to wrap all paragraphs (small print or not) in
<p> elements in order to be able to style them in a uniform manner.
And if the pointy-haired boss or rich customer forces you to be an HTML5
conformist, you can use
<span class=small>disclaimers re the above</span>
with
..small { font-size: 85% }
What the users will then lose is just that if CSS is turned off or
somehow filtered out (e.g., someone is viewing a cached copy in an
archive that has not stored the CSS files), then the disclaimers appear
in normal font size.