7 days of WordPress plugins, themes & templates - for free!* Unlimited asset downloads! Start 7-Day Free Trial
  1. Code
  2. HTML5

16 Rare HTML Tags You Really Should Know

Scroll to top
Read Time: 7 mins

Web developers these days are often expected to know and work in multiple languages. As a result, it's tricky to learn everything a language has to offer and easy to find yourself not utilizing the full potential of some more specialized but very useful tags.

Unfortunately, we haven't been tapping into the full potential of these more obscure HTML tags as of late. But it's never too late to get back into the game and start writing code that taps into the power of some under-used tags.

Here are the most underused and misunderstood tags in HTML. While they might be less familiar, they're still quite useful in certain situations.

1. <cite>

All of us will be familiar with the <blockquote> tag, but did you know about <blockquote>'s little brother <cite>? <cite> allows you to define the text inside the element as a reference. Typically, the browser will render the text inside the <cite> tag in italics, but this can be changed with a touch of CSS.

The <cite> tag is really useful for citing bibliographic and other site references. Here's an example of how to use the cite tag in a paragraph:

2. <optgroup>

The <optgroup> tag is a great way to add a little definition between groups of options inside a select box. This allows the select list to visually separate the items.

If you needed to group movie listings by time, for example, then it would look like this:

3. <acronym>

The <acronym> tag is a way to define or further explain a group of words. When you hover over text that has the <acronym> tag used, a box appears below with the text from the title tag. For example:

4. <address>

The <address> tag is quite an obscure little tag, but that doesn't mean it isn't useful! As the name implies, <address> allows you to semantically mark up addresses in HTML. The nifty little tag will also italicize all of the data within the brackets, though the style can easily be changed through simple CSS.

5. <ins> and <del>

If you want to display editing revisions with markup, <ins> and <del> are just the ticket. As the name implies, <ins> highlights what's been added to the document with an underline, and <del> shows what's been taken out with a strikethrough.

6. <label>

Form elements seem the easiest to forget when marking up a document. Of the form elements, one of the most forgotten is the <label> tag. Not only is it a quick way to note the label's text, but the <label> tag can also pass a "for" attribute to specify which element is to be given the label. These <label> tags are great for styling, and they also allow you to make the caption clickable for the associated element.

7. <fieldset>

Fieldset is a nifty little attribute that you can add to your forms to logically group form elements. Once applied, the <fieldset> tag draws a box around the elements within the fieldset. Bonus points for adding a <label> tag within the fieldset to define the title of the group.

8. <abbr>

The <abbr> tag is much akin to the <acronym> tag, except the <abbr> tag is only used to define abbreviated words. Just like <acronym>, you define a title within the tag. When a visitor hovers over the abbreviated text, the full definition appears below. The <abbr> tag is rarely used, but the benefits are many for screen readers, spellcheckers, and search engines.

9. <wbr>

The <wbr> tag is an incredibly obscure tag. To be honest, I doubt many of you have come into contact with the tag, as it's hardly ever used. (Truthfully, I hadn't seen the tag before I started researching this article.) Essentially, the tag allows you to specify a place where you think a line break might be useful, but only if needed. This tag is unique as it relies on the discretion of the browser to insert the line break, if needed. It's perfect for creating layouts that you want to avoid having horizontal scrollbars.

10. <details>

The details tag is used to provide or hide more information about the content on a website. It is used to create an interactive widget that the user can open or close. The content of the details tag is visible when opening the set attributes.

The details element is combined with the <summary> tag to create a headline that can be clicked to open or close the information you wish to learn more about.

11. <mark>

The <mark> tag is used to highlight a text or a piece of information that is very important and needs attention.

12. <meter>

The <meter> tag is used to define a scale for measuring in a specific range and can also handle fractional values. A gauge is another name for it. The interpretation of the <meter> tag can be determined using six different attributes. 

  • value: specifies the current measurement value
  • min: specifies the lower bound of the range 
  • max: specifies the upper bound of the range 
  • low: specifies the range that is a low value
  • high: specifies the range that is a high value
  • optimum: specifies the best or optimal numeric range

Here's an example of the <meter> tag usage:

13. <progress>

The HTML < progress> tag is used to show how far work has progressed. It makes it simple for web developers to add a progress bar to their website. It could also be used to represent the competence level of a developer's skill on their portfolio website or the progress of a file uploading with the <progress> tag.

The max attribute specifies the range of the progress bar.

14. <meta>

The <meta> description and author tag is another thing that is often overlooked by developers when coding. This tag is used to specify the description or keywords of the HTML document which helps users find your website or content easily.

The author <meta> tag is used to specify the author of the document.

15. <q>

The <q> element is used to identify quoted text on a web page. It is primarily used to indicate a brief quotation.

The <cite> attribute specifies the source of the quotation.

16. <base>

For relative links, the HTML base element is used to provide a base URL. You can, for instance, specify the base URL at the top of your page, and then other relative links on the page will use the same URL.

Please note that the <base> tag must be placed between the document's <head> tags, and each document can only have one <base> element. For example:


That's just a few of the lesser-known HTML tags that you might not have known. Maybe you found one that will be useful on your next web project?

This post has been updated with contributions from Ezekiel Lawson. Ezekiel is a front-end developer who focuses on writing clean, maintainable code with web technologies like JavaScript, Vue.js, HTML, and CSS.

Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.