HTML 5 <ol> Tag

The HTML <ol> tag is used for specifying an ordered list.

Ordered lists are often numbered (1. 2. 3... etc), however, they don't necessarily have to be. The main point of an ordered list is that the list items have been ordered, such that changing the order would change the meaning of the list (or document).

A list of instructions is a good candidate for an ordered list, with each list item representing a different step. Each step would need to be completed before the next step is started.

This element is used in conjunction with the <li> element. The <ol> tag declares the ordered list, and the <li> tag declares each list item.

You can also use the CSS list-style-type property to change the numbering system. For example, you could use roman numerals instead of decimal.


The three examples below demonstrate usage of the <ol> element.

  1. The first example is basic usage without any attributes.
  2. The second example demonstrates how you can manipulate the count by using the start attribute. This sets the count of the first list item. Although this attribute was deprecated in HTML 4.01, it is a valid attribute in HTML 5.
  3. The third example demonstrates how you can use the reversed attribute to reverse the count. Perfect for countdowns, rankings etc.

    If you don't see the third list in descending order, your browser doesn't support the reversed attribute. This attribute was introduced in HTML 5.


HTML tags can contain one or more attributes. Attributes are added to a tag to provide the browser with more information about how the tag should appear or behave. Attributes consist of a name and a value separated by an equals (=) sign, with the value surrounded by double quotes. Here's an example, style="color:black;".

There are 3 kinds of attributes that you can add to your HTML tags: Element-specific, global, and event handler content attributes.

The attributes that you can add to this tag are listed below.

Element-Specific Attributes

The following table shows the attributes that are specific to this tag/element.

reversedSpecifies that the list is a descending list (...3, 2, 1).

This is a boolean attribute. If the attribute is present, its value must either be the empty string or a value that is an ASCII case-insensitive match for the attribute's canonical name, with no leading or trailing whitespace (i.e. either reversed or reversed="reversed").

Possible values:

  • [Empty string]
  • reversed
startSpecifies the count of the first list item. Must be an ordinal number.
typeSpecifies the kind of marker to use in the list. If specified, this attribute must have one of the following values:
1Represents decimal numbers (eg. 1. 2. 3. ... etc)
aRepresents lower case latin alphabet (eg. a. b. c. ... etc)
ARepresents upper case latin alphabet (eg. A. B. C. ... etc)
iRepresents lower case roman numerals (eg. i. ii. iii. ... etc)
IRepresents upper case roman numerals (eg. I. II. III. ... etc)

Note: The CSS list-style-type property is often more appropriate for specifying the marker type.

Global Attributes

The following attributes are standard across all HTML 5 tags (although the tabindex attribute does not apply to dialog elements).

For a full explanation of these attributes, see HTML 5 global attributes.

Event Handler Content Attributes

Event handler content attributes enable you to invoke a script from within your HTML. The script is invoked when a certain "event" occurs. Each event handler content attribute deals with a different event.

For a full list of event handlers, see HTML 5 event handler content attributes.