MDN’s rogue definitions of <b> and <i>

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 and i 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?

Continue reading

Leave a Comment