Some things I've learned from Dan Mayer's excellent article "'What Font Should I Use?': Five Principles for Choosing and Using Typefaces," from Smashing Magazine.
Picking a font is a bit like choosing what clothing to wear. Its not about self expression--remember that plush velor purple jacket in your closet you love, but rarely wear? It's more about utility--something ruggedly solid for easy use and easy on the eyes.
In other words, when it comes to style, a little goes a long way.
Font families usually run along a continuum. The strictly proportioned Geometric San-Serifs can look clear, objective and modern, but also come off as cold, impersonal and boring. Think well-designed airport.
The Humanist Sans family, inspired by handwriting, can be warmer--more human and empathetic. But they can also be also wish-washy, or even "the hand-servants of corporate insecurity," Mayer writes.
The 18th transitional and modern typefaces, which succeeded the Old Style typefaces, can feel either stylish and dynamic, or stodgy and undistinguished.
The wide angling slab serifs are either distinctive or overly conspicuous, given their environs.
So, how do you pick the right font, or set of fonts?
In many cases, a single font will do. If you should mix in and second font, use the rule of Decisive Contrast: the second element should be distinctly different from the first. "Avoid wimpy contrasts," Mayer writes.
But this doesn't give us carte blanche to mix the two fonts with mad abandon. The two must work in some sort of "typographic harmony."
Two vastly different fonts that share one similar trait have a chance of working together well. Fonts created during the same time periods might get along more naturally.
It's also worth noting that, for lovers of conformity, the land of Web fonts is jagged territory.
Reading the W3C's font specification, you quickly learn that there is no universal taxonomy of font properties, or even font classification. Italic in one family could be called slanted in another. As a result all properties, such as italics, must be matched to the specific font family.
In fact, even the simple act of bolding something can come with many variant methods, which, natch, varies font by font. Do we have any Helvetica Bold specialists in the house? You can specify, numerically, the amount of boldness to apply, relative the baseline boldness that may already be used (i.e. "{ font-weight: 700 }". But the font may or may not support this designation.
"There is no guarantee that there will be a darker face for each of the 'font-weight' values," the W3C doc states. There is no guarantee on how a UA will map font faces within a family to weight values. The only guarantee is that a face of a given value will be no less dark than the faces of lighter values."