HTML 4.01/XHTML 1.0 Strict includes the following void elements:
area
- clickable, defined area in an imagebase
- specifies a base URL from which all links basebr
- line breakcol
- column in a table [deprecated]hr
- horizontal rule (line)img
- imageinput
- field where users enter datalink
- links an external resource to the documentmeta
- provides information about the documentparam
- defines parameters for pluginsHTML 5 standards include all non-deprecated tags from the previous list and
command
- represents a command users can invoke [obsolete]keygen
- facilitates public key generation for web certificates [deprecated]source
- specifies media sources for picture
, audio
, and video
elementsThe example below does not include void elements:
<div>
<a href="http://stackoverflow.com/">
<h3>Click here to visit <i>Stack Overflow!</i></h3>
</a>
<button onclick="alert('Hello!');">Say Hello!</button>
<p>My favorite language is <b>HTML</b>. Here are my others:</p>
<ol>
<li>CSS</li>
<li>JavaScript</li>
<li>PHP</li>
</ol>
</div>
Notice how every element has an opening tag, a closing tag, and text or other elements inside the opening and closing tags. Void tags however, are shown in the example below:
<img src="https://cdn.sstatic.net/Sites/stackoverflow/company/img/logos/so/so-icon.png" />
<br>
<hr>
<input type="number" placeholder="Enter your favorite number">
With the exception of the img tag, all of these void elements have only an opening tag. The img tag, unlike any other tag, has a self closing /
before the greater than sign of the opening tag. It is best practice to have a space before the slash.