From 1993 through roughly 2008, the <b>
and <i>
tags in HTML meant “bold” and “italic,” respectively. Using those tags will still, in 2023, cause most (all?) browsers to render text with either a bold font weight or an italic font style, but the tags no longer “mean” that. It’s now more correct to consider it a coincidence that browsers represent <b>
as Bold and <i>
as Italic; they may just as well be <y>
and <r>
.
The emphasis on both (a) semantic HTML and (b) backwards compatibility means that, as stated by the W3C themselves:
The
b
andi
elements are widely used — it is better to give them good default rendering for various media including aural than to try to ban them.
So: What to do with those letters? <b>
can’t mean “bold,” and <i>
can’t mean “italic.” What do they mean?