Using the HTML abbr Element
Abbreviations are useful until the reader has to guess what they mean. HTML’s <abbr> element connects the short form to its expansion:
<abbr title="Cascading Style Sheets">CSS</abbr>
Browsers may show the title value as a tooltip when a mouse pointer rests over the abbreviation. That is a helpful extra, but it should not be the only way essential information is available: touch and keyboard users may not see the tooltip.
For an uncommon abbreviation, write the full term the first time and keep the markup around its short form:
<p>
Cascading Style Sheets (<abbr title="Cascading Style Sheets">CSS</abbr>)
describes the presentation of an HTML document.
</p>
Defining the term
When the sentence itself defines the abbreviation, <abbr> can sit inside <dfn>:
<p>
<dfn><abbr title="Cascading Style Sheets">CSS</abbr></dfn>
describes the presentation of an HTML document.
</p>
You can style abbreviations, although the default dotted underline already gives readers a familiar clue:
abbr[title] {
text-decoration: underline dotted;
text-decoration-color: red;
cursor: help;
}
I would not mark up every familiar abbreviation on every appearance. Use <abbr> where the expansion removes genuine ambiguity, and make sure the surrounding text still works without a hover tooltip.