This page is In Progress

Notice: The WebPlatform project, supported by various stewards between 2012 and 2015, has been discontinued. This site is now available on github.



The b element represents a span of text to be stylistically offset from the normal prose without conveying any extra importance.

Overview Table

DOM Interface

It was originally used to tell the browser to make the enclosed text bold. While the b element is widely supported in browsers, its use is not recommended for this purpose since CSS can be used to achieve the same effect on a more semantically-appropriate element. In HTML5, b has been re-purposed to signify text this is offset in some way, but is of no greater significance than the surrounding text.

The b element should be used as a last resort when no other element is more appropriate, as it has no semantic value other than indicating that the contained text should be stylistically offset in some way (i.e. it’s like a shorter span element). For visually similar elements that do provide semantic meaning, consider strong, dfn, h1-h6, or abbr.


In the following example, objects in a text adventure are highlighted as being special by use of the b element.

<p>You enter a small room. Your <b>sword</b> glows
brighter. A <b>rat</b> scurries past the corner wall.</p>

View live example

In this example, the b element is used to indicate both a company and a product name. Disambiguation via CSS is accomplished using the class attribute.

<p><b class="org">Acme <abbr title="Corporation">Corp</abbr></b>
is pleased to introduce the
<b class="product">Widget Blast 3000</b>.
This is a miracle of modern science that will
simplify your life, fry an egg, and even put
your kids to bed.</p>

View live example


 The b element makes a lot of sense for use as a wrapper for proper names (e.g. people, companies, products, locations) as they may be offset from the surrounding text in some way, but are not semantically meaningful.

Internationalization topics related to the b element:


As the b element has no inherent meaning, you should not use it to convey meaning; there is probably a more appropriate element for that. Headings should use the h1 to h6 elements, stress emphasis should use the em element, importance should be denoted with the strong element, and contextually-important/highlighted text should use the mark element.

Related specifications

HTML 5.1
W3C Working Draft
W3C Recommendation
HTML 4.01
W3C Recommendation

See also

Related articles