H.dev

HTML Ordered List

Hero

HTML Ordered List Learn how to use the HTML Ordered List (<ol>) to display items in a specific numerical or alphabetical sequence. Learning Outcomes: Create ordered lists, understand the type and start attributes. Prerequisites: Understanding of the HTML unordered list. Reading Time: 4 min read Difficulty: Beginner

Introduction

While unordered lists use bullet points for items where order doesn't matter, an Ordered List (<ol>) is used when the sequence is vital. Think of recipes, a top 10 countdown, or a step-by-step tutorial. Browsers automatically number these items for you.

Why This Matters

When you are writing educational content for Learn with Himanshu, you will frequently need to write step-by-step instructions (e.g., "How to install Next.js"). Using an <ol> ensures that screen readers announce the step numbers, and you don't have to manually type out "1, 2, 3" for every item!

Core Concepts

  • <ol> (Ordered List): The parent container that tells the browser to automatically sequentially number the items inside it.
  • <li> (List Item): Just like unordered lists, every item must be wrapped in an <li> tag.

Special Attributes for <ol>

Unlike <ul>, the <ol> tag has very useful attributes that are still valid in HTML5:

  • type: Changes the numbering style (e.g., 1 for numbers, a for lowercase letters, A for uppercase letters, i for roman numerals).
  • start: Allows you to start the counting from a specific number (e.g., start="5").
  • reversed: A boolean attribute that makes the list count backwards (e.g., 3, 2, 1).

Syntax

By default, an ordered list uses decimal numbers starting from 1.

<ol>
  <li>First step</li>
  <li>Second step</li>
  <li>Third step</li>
</ol>

Real World Example

Let's build a step-by-step project deployment guide for the Himubey documentation.

<section class="tutorial-steps">
  <h2>How to Deploy a Next.js App</h2>
  
  <!-- Using uppercase Roman numerals -->
  <ol type="I">
    <li>Initialize a GitHub repository.</li>
    <li>Push your local code to the `main` branch.</li>
    <li>Log into your hosting provider (like Vercel).</li>
    <li>Import the GitHub repository and click deploy!</li>
  </ol>
</section>

Best Practices

  • Let the Browser Count: Never manually type numbers inside an <li> (e.g., <li>1. Do this</li>). It defeats the purpose of the tag and makes reordering items a nightmare.
  • Semantic Usage: Use <ol> strictly when the order of the information affects its meaning. If shuffling the items doesn't change the meaning, use a <ul> instead.

Common Mistakes

Mistake: Manually numbering items inside an unordered list because you don't know the <ol> tag exists.

<!-- WRONG -->
<ul>
  <li>1. Wake up</li>
  <li>2. Drink coffee</li>
</ul>

Correct Approach: Let the <ol> do the heavy lifting!

<!-- CORRECT -->
<ol>
  <li>Wake up</li>
  <li>Drink coffee</li>
</ol>

💡 Himubey Tip

If you have a very long list spanning multiple pages, you can use the start attribute on the second page to continue the numbering seamlessly! For example, <ol start="11"> will start the numbering at 11 instead of 1.

Interview Questions

  1. What does <ol> stand for, and when should you use it instead of <ul>?
  2. How do you change an ordered list to use Roman numerals instead of standard numbers?
  3. What attribute would you use to make a "Top 10 Countdown" list count backwards from 10 to 1?

Mini Challenge

Task: Build a "Top 3 Movies" countdown.

  1. Create an <ol> tag.
  2. Add the reversed attribute so it counts backwards (3, 2, 1).
  3. Add three <li> elements with your favorite movies, starting with number 3 and ending with your absolute favorite as number 1!

Summary

The <ol> tag is perfect for step-by-step guides, rankings, and instructions. By leveraging attributes like type, start, and reversed, you have fine-grained control over how your sequences are displayed without ever having to manually type a single number.

Next Lesson

Next Lesson: HTML Definition Lists

Design & Developed by Himanshu Dubey © 2026