HTML formatting elements are used to define special types of text like bold, italic, emphasized. Elements like <b> and <strong> both make text bold but <strong> adds more semantic importance implying it is important. Similarly, <i> and <emph> both make text italic but <emph> emphasizes it is important. Other elements include <small> for smaller text, <del> for removed text, <sup> for superscript and <sub> for subscript.