Will the <b> and <i> tags ever become deprecated?
If you end up doing <span class="bold">
a lot you are not correctly using either span
, nor class
names. Class names should tell you what the tag is, not what it looks like.
The correct replacement for <b>
and <i>
are <strong>
and <em>
, and they should be used to note that the specific text inside has a different meaning than the surrounding text.
Update: New specification for <b>
, <i>
,<strong>
,<em>
released under HTML 5
In HTML5 <b>
and <i>
have specific meaning as do <strong>
and <em>
. Use them all as specified.
4.6.2 The em element :
The em element represents stress emphasis of its contents.
4.6.3 The strong element:
The strong element represents strong importance, seriousness, or urgency for its contents.
4.6.16 The i element:
The i element represents [...] otherwise offset from the normal prose [...], such as a taxonomic designation, a technical term, [...].
4.6.17 The b element:
The b element represents a span of text to which attention is being drawn for utilitarian purposes [...], such as key words in a document abstract, product names in a review [...].
they are not deprecated in HTML 4.01, and they won't be deprecated in HTML 5. for reasons:
The inclusion of these elements is a largely pragmatic decision based upon their widespread usage, and their usefulness for use cases which are not covered by more specific elements.
While there are a number of common use cases for italics which are covered by more specific elements, such as emphasis (em), citations (cite), definitions (dfn) and variables (var), there are many other use cases which are not covered well by these elements. For example, a taxonomic designation, a technical term, an idiomatic phrase from another language, a thought, or a ship name.
Similarly, although a number of common use cases for bold text are also covered by more specific elements such as strong emphasis (strong), headings (h1-h6) or table headers (th); there are others which are not, such as key words in a document abstract or product names in a review.
Some people argue that in such cases, the span element should be used with an appropriate class name and associated stylesheet. However, the b and i elements provide for a reasonable fallback styling in environments that don't support stylesheets or which do not render visually, such as screen readers, and they also provide some indication that the text is somehow distinct from its surrounding content.
In essence, they convey distinct, though non-specific, semantics, which are to be determined by the reader in the context of their use. In other words, although they don’t convey specific semantics by themselves, they indicate that that the content is somehow distinct from its surroundings and leaves the interpretation of the semantics up to the reader.
This is further explained in the article The <b> and <i> Elements.
Similarly, the small element is defined for content that is commonly typographically rendered in small print, and which often referred to as fine print. This could include copyright statements, disclaimers and other legal text commonly found at the end of a document.