HTML5 Tags Complete List

By Xah Lee. Date: . Last updated: .

This page is a COMPLETE list of HTML5 tags. Those marked ⭐ are new in HTML5.

HTML Structure, Meta info

<!doctype html>
DOCTYPE delaration. This must be the first line.
html
wrapper tag for entire file. (only DOCTYPE goes before it.) [see HTML Tutorial: the Basics]
head
wrapper tag for meta info
meta
meta tag used inside head tag. e.g. <meta charset="utf-8" />
link
style sheet etc. e.g. <link rel="stylesheet" type="text/css" href="basic.css">
title
document title
base
base URL. <base href="http://example.com/" target="_blank" />
body
wrapper tag for page content
style
CSS stylesheet. <style type="text/css">…</style> [see CSS Basics]

Page Structure

nav
navigation bar
header
page's header
footer
page's footer
main
main section
aside
sidebar
article
article body
section
section body (e.g. a chapter or section).

[see HTML: Page Structure Tags]

Title/Section Heading

h1
headline 1
h2
headline 2
h3
headline 3
h4
headline 4
h5
headline 5
h6
headline 6

[see HTML: How to Markup Subtitle]

Text Block

div
generic block markup. Use with CSS
p
paragraph
pre
monospace block
blockquote
quote passages, excerpt
hr
horizontal rule

Lists

ul
unordered list. [see CSS: Flowing List]
ol
ordered list.
li
list item. (use inside ul or ol)
dl
definition list. [see HTML: dl, dt, dd]
dt
definition term. Use inside dl
dd
definition description. Use inside dl

Inline Markup

span
generic text markup. Use with CSS
a
link (anchor)
em
emphasize. Placing emphasis may affect the meaning of sentence.
strong
important. Placement of this tag does not change the meaning of sentence.
b
bold
i
italic
u
underline for book title, misspelled word, ….
s
strike-thru [see HTML: s strike del Tags]
del
deleted text
ins
newly inserted text (in contrast to del)
mark
highlight
small
smaller
sup
superscript
sub
subscript
dfn
definition term
code
computer code
var
variable
samp
sample code
kbd
keyboard input
q
short inline quote. [see “q” example]
cite
book title (or title of: article, essay, song, script, film, TV show, game, artwork, … etc)
ruby
Pronunciation markup for Asian languages. [see ruby example]
rt
used inside ruby tag, for pronunciation.
rp
used inside ruby tag, for older browser support.
br
line break
wbr
line-break hint. Browsers can render line break at this point.
bdo
text direction
bdi
text direction

Table

table
table [see HTML Table]
caption
table caption
tr
table row
td
table cell
th
table cell header
thead
table header. [see thead, tbody, tfoot]
tfoot
table footer
tbody
table body
colgroup
group table columns for styling. [see colgroup, col]
col
used inside colgroup

Image

img
inline image
figure
for independent illustartion, image, video, code example, etc. [see Figure]
figcaption
caption for figure.
map
Image Map [see Image Map]
area
Used inside map.

Audio, Video, Special Objects

video
[see HTML Video Tag]
audio
embed sound files. [see HTML Audio Tag]
source
A self-closing tag, to be used inside video or audio tags. [see HTML Video Tag]
track
? video/audio track related.
script
[see JavaScript Basics by Example]
noscript
e.g. <noscript>displayed when JavaScript is off</noscript>. This is an ancient tag. Mostly used in early 2000s only. It was used when browsers may not support JavaScript, or user have JavaScript turned off.
object
embedded object. [see “Object” tag for “Iframe”]
param
parameter, used with object tag
embed
interactive content or plugin
iframe
embed a page; inner window. [see HTML: Iframe]
canvas
interactive graphics, games. [see Canvas Example]
abbr
e.g. <abbr title="eXtensible Markup Language">XML</abbr>. [see abbr Example]
address
markup for contact of article or page. [see HTML: address Tag]
meter
gauge indicator. [see HTML: meter Tag]
progress
Progress bar. [HTML: progress Tag]
time
date/time. [see HTML: time]

Forms

form
user input. [see HTML Form Example]
button
Render as Button. Used together with JavaScript.
input
Generic input (text, radio box, checkbox, submit button) [see HTML: Input Tag]
textarea
large text input. [see HTML: Textarea Tag]
select
menu. [see HTML: Select Tag]
option
Menu item. Used with select.
optgroup
Menu item group label.
label
A label for a form input
fieldset
?
legend
title in a fieldset
datalist
? dropdown list
menu
? menu list
output
?
details
?
summary
? header of a "details" element

HTML Form Example


HTML5 Custom Data Attribute

See: HTML5 Custom Data Attribute.

Obsolete HTML5 Tags

command
? creating a user input, such as buttons.
keygen
generate a encryption key.

Obsolete HTML4 Tags

acronym
use abbr
applet
use embed or object. [see “Object” tag for “Iframe”]
bgsound
use audio
basefont
use CSS
big
use CSS font-size.
center
use CSS. [see Centering with CSS]
dir
Directory list. Use ul
font
use CSS font-family
frame
use CSS, iframe. [see HTML: Iframe]
frameset
use CSS, iframe
noframes
strike
use s. [see s strike del]
tt
stands for “teletype”, rendered in monospace font. Use {code, samp}, or CSS.
xmp
use pre with CSS.

HTML Basics

  1. HTML Basics
  2. HTML5 Tags
  3. Case Sensitivity
  4. Allowed Characters
  5. Charset and Encoding
  6. Self-Closing Tags
  7. Multiple Class Value
  8. HTML/XML Entity List
Liket it? Put $5 at patreon.

Or, Buy JavaScript in Depth

If you have a question, put $5 at patreon and message me.

Web Dev Tutorials

  1. HTML
  2. Visual CSS
  3. JS in Depth
  4. JS Reference
  5. DOM
  6. SVG
  7. Web Dev Blog